RE: [PATCH v2 1/4] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
From: Alim Akhtar
Date: Sun Mar 06 2022 - 12:20:35 EST
>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@xxxxxxxxxxxxx]
>Sent: Friday, March 4, 2022 5:54 PM
>To: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>; Thomas Gleixner
><tglx@xxxxxxxxxxxxx>; Rob Herring <robh+dt@xxxxxxxxxx>; Krzysztof
>Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>; Alim Akhtar
><alim.akhtar@xxxxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx;
>devicetree@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-
>samsung-soc@xxxxxxxxxxxxxxx
>Subject: [PATCH v2 1/4] dt-bindings: timer: exynos4210-mct: describe known
>hardware and its interrupts
>
>Most of the Samsung Exynos SoCs use almost the same Multi-Core Timer
>block, so only two compatibles were used so far (for Exynos4210 and
>Exynos4412 flavors) with Exynos4210-one being used in most of the SoCs.
>However the Exynos4210 flavor actually differs by number of interrupts.
>
>Add new compatibles, maintaining backward compatibility with Exynos4210,
>and constraints for number of interrupts. This allows to exactly match the
>Exynos MCT hardware.
>
>Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
>---
Reviewed-by: Alim Akhtar <alim.akhtar@xxxxxxxxxxx>
> .../timer/samsung,exynos4210-mct.yaml | 67 ++++++++++++++++++-
> 1 file changed, 64 insertions(+), 3 deletions(-)
>
>diff --git a/Documentation/devicetree/bindings/timer/samsung,exynos4210-
>mct.yaml
>b/Documentation/devicetree/bindings/timer/samsung,exynos4210-mct.yaml
>index f11cbc7ccc14..1584944c7ac4 100644
>--- a/Documentation/devicetree/bindings/timer/samsung,exynos4210-
>mct.yaml
>+++ b/Documentation/devicetree/bindings/timer/samsung,exynos4210-
>mct.yam
>+++ l
>@@ -19,9 +19,20 @@ description: |+
>
> properties:
> compatible:
>- enum:
>- - samsung,exynos4210-mct
>- - samsung,exynos4412-mct
>+ oneOf:
>+ - enum:
>+ - samsung,exynos4210-mct
>+ - samsung,exynos4412-mct
>+ - items:
>+ - enum:
>+ - samsung,exynos3250-mct
>+ - samsung,exynos5250-mct
>+ - samsung,exynos5260-mct
>+ - samsung,exynos5420-mct
>+ - samsung,exynos5433-mct
>+ - samsung,exynos850-mct
>+ - tesla,fsd-mct
>+ - const: samsung,exynos4210-mct
>
> clocks:
> minItems: 2
>@@ -63,6 +74,56 @@ required:
> - interrupts
> - reg
>
>+allOf:
>+ - if:
>+ properties:
>+ compatible:
>+ contains:
>+ const: samsung,exynos3250-mct
>+ then:
>+ properties:
>+ interrupts:
>+ minItems: 8
>+ maxItems: 8
>+
>+ - if:
>+ properties:
>+ compatible:
>+ contains:
>+ const: samsung,exynos5250-mct
>+ then:
>+ properties:
>+ interrupts:
>+ minItems: 6
>+ maxItems: 6
>+
>+ - if:
>+ properties:
>+ compatible:
>+ contains:
>+ enum:
>+ - samsung,exynos5260-mct
>+ - samsung,exynos5420-mct
>+ - samsung,exynos5433-mct
>+ - samsung,exynos850-mct
>+ then:
>+ properties:
>+ interrupts:
>+ minItems: 12
>+ maxItems: 12
>+
>+ - if:
>+ properties:
>+ compatible:
>+ contains:
>+ enum:
>+ - tesla,fsd-mct
>+ then:
>+ properties:
>+ interrupts:
>+ minItems: 16
>+ maxItems: 16
>+
> additionalProperties: false
>
> examples:
>--
>2.32.0