All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
@ 2022-02-25 15:36   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

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@canonical.com>
---
 .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
 1 file changed, 52 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..d4e23fd7a1da 100644
--- a/Documentation/devicetree/bindings/timer/samsung,exynos4210-mct.yaml
+++ b/Documentation/devicetree/bindings/timer/samsung,exynos4210-mct.yaml
@@ -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,44 @@ 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
+
 additionalProperties: false
 
 examples:
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
@ 2022-02-25 15:36   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

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@canonical.com>
---
 .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
 1 file changed, 52 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..d4e23fd7a1da 100644
--- a/Documentation/devicetree/bindings/timer/samsung,exynos4210-mct.yaml
+++ b/Documentation/devicetree/bindings/timer/samsung,exynos4210-mct.yaml
@@ -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,44 @@ 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
+
 additionalProperties: false
 
 examples:
-- 
2.32.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
  2022-02-25 15:36   ` Krzysztof Kozlowski
@ 2022-02-25 15:36     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos SoCs, which is correct but not specific enough.  These MCT blocks
have different number of interrupts, so add a second specific
compatible to Exynos3250 and all Exynos5 SoCs.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 arch/arm/boot/dts/exynos3250.dtsi | 3 ++-
 arch/arm/boot/dts/exynos5250.dtsi | 3 ++-
 arch/arm/boot/dts/exynos5260.dtsi | 3 ++-
 arch/arm/boot/dts/exynos54xx.dtsi | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index ae644315855d..41bb421e67c2 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -269,7 +269,8 @@ gic: interrupt-controller@10481000 {
 		};
 
 		timer@10050000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos3250-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x10050000 0x800>;
 			interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
 				     <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 5baaa7eb71a4..63d1dcf2c55c 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -245,7 +245,8 @@ clock_audss: audss-clock-controller@3810000 {
 		};
 
 		timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5250-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101C0000 0x800>;
 			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
 			clock-names = "fin_pll", "mct";
diff --git a/arch/arm/boot/dts/exynos5260.dtsi b/arch/arm/boot/dts/exynos5260.dtsi
index 56271e7c4587..ff1ee409eff3 100644
--- a/arch/arm/boot/dts/exynos5260.dtsi
+++ b/arch/arm/boot/dts/exynos5260.dtsi
@@ -333,7 +333,8 @@ chipid: chipid@10000000 {
 		};
 
 		mct: timer@100b0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5260-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x100B0000 0x1000>;
 			clocks = <&fin_pll>, <&clock_peri PERI_CLK_MCT>;
 			clock-names = "fin_pll", "mct";
diff --git a/arch/arm/boot/dts/exynos54xx.dtsi b/arch/arm/boot/dts/exynos54xx.dtsi
index 2ddb7a5f12b3..3ec43761d8b9 100644
--- a/arch/arm/boot/dts/exynos54xx.dtsi
+++ b/arch/arm/boot/dts/exynos54xx.dtsi
@@ -74,7 +74,8 @@ smp-sram@53000 {
 		};
 
 		mct: timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5420-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101c0000 0xb00>;
 			interrupts-extended = <&combiner 23 3>,
 					      <&combiner 23 4>,
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
@ 2022-02-25 15:36     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos SoCs, which is correct but not specific enough.  These MCT blocks
have different number of interrupts, so add a second specific
compatible to Exynos3250 and all Exynos5 SoCs.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 arch/arm/boot/dts/exynos3250.dtsi | 3 ++-
 arch/arm/boot/dts/exynos5250.dtsi | 3 ++-
 arch/arm/boot/dts/exynos5260.dtsi | 3 ++-
 arch/arm/boot/dts/exynos54xx.dtsi | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index ae644315855d..41bb421e67c2 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -269,7 +269,8 @@ gic: interrupt-controller@10481000 {
 		};
 
 		timer@10050000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos3250-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x10050000 0x800>;
 			interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
 				     <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 5baaa7eb71a4..63d1dcf2c55c 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -245,7 +245,8 @@ clock_audss: audss-clock-controller@3810000 {
 		};
 
 		timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5250-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101C0000 0x800>;
 			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
 			clock-names = "fin_pll", "mct";
diff --git a/arch/arm/boot/dts/exynos5260.dtsi b/arch/arm/boot/dts/exynos5260.dtsi
index 56271e7c4587..ff1ee409eff3 100644
--- a/arch/arm/boot/dts/exynos5260.dtsi
+++ b/arch/arm/boot/dts/exynos5260.dtsi
@@ -333,7 +333,8 @@ chipid: chipid@10000000 {
 		};
 
 		mct: timer@100b0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5260-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x100B0000 0x1000>;
 			clocks = <&fin_pll>, <&clock_peri PERI_CLK_MCT>;
 			clock-names = "fin_pll", "mct";
diff --git a/arch/arm/boot/dts/exynos54xx.dtsi b/arch/arm/boot/dts/exynos54xx.dtsi
index 2ddb7a5f12b3..3ec43761d8b9 100644
--- a/arch/arm/boot/dts/exynos54xx.dtsi
+++ b/arch/arm/boot/dts/exynos54xx.dtsi
@@ -74,7 +74,8 @@ smp-sram@53000 {
 		};
 
 		mct: timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5420-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101c0000 0xb00>;
 			interrupts-extended = <&combiner 23 3>,
 					      <&combiner 23 4>,
-- 
2.32.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
  2022-02-25 15:36   ` Krzysztof Kozlowski
@ 2022-02-25 15:36     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos SoCs, which is correct but not specific enough.  These MCT blocks
have different number of interrupts, so add a second specific
compatible to Exynos5433 and Exynos850.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
 arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
index 661567d2dd7a..017ccc2f4650 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
@@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
 		};
 
 		timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5433-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101c0000 0x800>;
 			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
 				<GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi b/arch/arm64/boot/dts/exynos/exynos850.dtsi
index d1700e96fee2..12f7ddc6fd0a 100644
--- a/arch/arm64/boot/dts/exynos/exynos850.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi
@@ -181,7 +181,8 @@ chipid@10000000 {
 		};
 
 		timer@10040000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos850-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x10040000 0x800>;
 			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
 				     <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
@ 2022-02-25 15:36     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-02-25 15:36 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring,
	Krzysztof Kozlowski, Alim Akhtar, linux-kernel, devicetree,
	linux-arm-kernel, linux-samsung-soc

One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos SoCs, which is correct but not specific enough.  These MCT blocks
have different number of interrupts, so add a second specific
compatible to Exynos5433 and Exynos850.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
 arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
index 661567d2dd7a..017ccc2f4650 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
@@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
 		};
 
 		timer@101c0000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos5433-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x101c0000 0x800>;
 			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
 				<GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi b/arch/arm64/boot/dts/exynos/exynos850.dtsi
index d1700e96fee2..12f7ddc6fd0a 100644
--- a/arch/arm64/boot/dts/exynos/exynos850.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi
@@ -181,7 +181,8 @@ chipid@10000000 {
 		};
 
 		timer@10040000 {
-			compatible = "samsung,exynos4210-mct";
+			compatible = "samsung,exynos850-mct",
+				     "samsung,exynos4210-mct";
 			reg = <0x10040000 0x800>;
 			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
 				     <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
-- 
2.32.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* RE: [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
  2022-02-25 15:36   ` Krzysztof Kozlowski
@ 2022-03-04 10:52     ` Alim Akhtar
  -1 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:52 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

Hi Krzysztof

>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 1/3] 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@canonical.com>
>---
> .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
> 1 file changed, 52 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..d4e23fd7a1da 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,44 @@ 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
>+

Probably you can update the list for tesla,fsd-mct as well in this patch
(as the support was added recently)

> additionalProperties: false
>
> examples:
>--
>2.32.0



^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
@ 2022-03-04 10:52     ` Alim Akhtar
  0 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:52 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

Hi Krzysztof

>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 1/3] 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@canonical.com>
>---
> .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
> 1 file changed, 52 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..d4e23fd7a1da 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,44 @@ 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
>+

Probably you can update the list for tesla,fsd-mct as well in this patch
(as the support was added recently)

> additionalProperties: false
>
> examples:
>--
>2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
  2022-02-25 15:36     ` Krzysztof Kozlowski
@ 2022-03-04 10:54       ` Alim Akhtar
  -1 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:54 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc



>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
>
>One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos
>SoCs, which is correct but not specific enough.  These MCT blocks have
different
>number of interrupts, so add a second specific compatible to Exynos3250 and
all
>Exynos5 SoCs.
>
>Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>---

Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>


> arch/arm/boot/dts/exynos3250.dtsi | 3 ++-
arch/arm/boot/dts/exynos5250.dtsi
>| 3 ++-  arch/arm/boot/dts/exynos5260.dtsi | 3 ++-
>arch/arm/boot/dts/exynos54xx.dtsi | 3 ++-
> 4 files changed, 8 insertions(+), 4 deletions(-)
>
>diff --git a/arch/arm/boot/dts/exynos3250.dtsi
>b/arch/arm/boot/dts/exynos3250.dtsi
>index ae644315855d..41bb421e67c2 100644
>--- a/arch/arm/boot/dts/exynos3250.dtsi
>+++ b/arch/arm/boot/dts/exynos3250.dtsi
>@@ -269,7 +269,8 @@ gic: interrupt-controller@10481000 {
> 		};
>
> 		timer@10050000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos3250-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x10050000 0x800>;
> 			interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
> 				     <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>, diff
--
>git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
>index 5baaa7eb71a4..63d1dcf2c55c 100644
>--- a/arch/arm/boot/dts/exynos5250.dtsi
>+++ b/arch/arm/boot/dts/exynos5250.dtsi
>@@ -245,7 +245,8 @@ clock_audss: audss-clock-controller@3810000 {
> 		};
>
> 		timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5250-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x101C0000 0x800>;
> 			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
> 			clock-names = "fin_pll", "mct";
>diff --git a/arch/arm/boot/dts/exynos5260.dtsi
>b/arch/arm/boot/dts/exynos5260.dtsi
>index 56271e7c4587..ff1ee409eff3 100644
>--- a/arch/arm/boot/dts/exynos5260.dtsi
>+++ b/arch/arm/boot/dts/exynos5260.dtsi
>@@ -333,7 +333,8 @@ chipid: chipid@10000000 {
> 		};
>
> 		mct: timer@100b0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5260-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x100B0000 0x1000>;
> 			clocks = <&fin_pll>, <&clock_peri PERI_CLK_MCT>;
> 			clock-names = "fin_pll", "mct";
>diff --git a/arch/arm/boot/dts/exynos54xx.dtsi
>b/arch/arm/boot/dts/exynos54xx.dtsi
>index 2ddb7a5f12b3..3ec43761d8b9 100644
>--- a/arch/arm/boot/dts/exynos54xx.dtsi
>+++ b/arch/arm/boot/dts/exynos54xx.dtsi
>@@ -74,7 +74,8 @@ smp-sram@53000 {
> 		};
>
> 		mct: timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5420-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x101c0000 0xb00>;
> 			interrupts-extended = <&combiner 23 3>,
> 					      <&combiner 23 4>,
>--
>2.32.0



^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
@ 2022-03-04 10:54       ` Alim Akhtar
  0 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:54 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc



>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
>
>One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos
>SoCs, which is correct but not specific enough.  These MCT blocks have
different
>number of interrupts, so add a second specific compatible to Exynos3250 and
all
>Exynos5 SoCs.
>
>Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>---

Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>


> arch/arm/boot/dts/exynos3250.dtsi | 3 ++-
arch/arm/boot/dts/exynos5250.dtsi
>| 3 ++-  arch/arm/boot/dts/exynos5260.dtsi | 3 ++-
>arch/arm/boot/dts/exynos54xx.dtsi | 3 ++-
> 4 files changed, 8 insertions(+), 4 deletions(-)
>
>diff --git a/arch/arm/boot/dts/exynos3250.dtsi
>b/arch/arm/boot/dts/exynos3250.dtsi
>index ae644315855d..41bb421e67c2 100644
>--- a/arch/arm/boot/dts/exynos3250.dtsi
>+++ b/arch/arm/boot/dts/exynos3250.dtsi
>@@ -269,7 +269,8 @@ gic: interrupt-controller@10481000 {
> 		};
>
> 		timer@10050000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos3250-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x10050000 0x800>;
> 			interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
> 				     <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>, diff
--
>git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
>index 5baaa7eb71a4..63d1dcf2c55c 100644
>--- a/arch/arm/boot/dts/exynos5250.dtsi
>+++ b/arch/arm/boot/dts/exynos5250.dtsi
>@@ -245,7 +245,8 @@ clock_audss: audss-clock-controller@3810000 {
> 		};
>
> 		timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5250-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x101C0000 0x800>;
> 			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
> 			clock-names = "fin_pll", "mct";
>diff --git a/arch/arm/boot/dts/exynos5260.dtsi
>b/arch/arm/boot/dts/exynos5260.dtsi
>index 56271e7c4587..ff1ee409eff3 100644
>--- a/arch/arm/boot/dts/exynos5260.dtsi
>+++ b/arch/arm/boot/dts/exynos5260.dtsi
>@@ -333,7 +333,8 @@ chipid: chipid@10000000 {
> 		};
>
> 		mct: timer@100b0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5260-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x100B0000 0x1000>;
> 			clocks = <&fin_pll>, <&clock_peri PERI_CLK_MCT>;
> 			clock-names = "fin_pll", "mct";
>diff --git a/arch/arm/boot/dts/exynos54xx.dtsi
>b/arch/arm/boot/dts/exynos54xx.dtsi
>index 2ddb7a5f12b3..3ec43761d8b9 100644
>--- a/arch/arm/boot/dts/exynos54xx.dtsi
>+++ b/arch/arm/boot/dts/exynos54xx.dtsi
>@@ -74,7 +74,8 @@ smp-sram@53000 {
> 		};
>
> 		mct: timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5420-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x101c0000 0xb00>;
> 			interrupts-extended = <&combiner 23 3>,
> 					      <&combiner 23 4>,
>--
>2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
  2022-02-25 15:36     ` Krzysztof Kozlowski
@ 2022-03-04 10:57       ` Alim Akhtar
  -1 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:57 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc



>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
>
>One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos
>SoCs, which is correct but not specific enough.  These MCT blocks have
different
>number of interrupts, so add a second specific compatible to Exynos5433 and
>Exynos850.
>
>Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>---
> arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
>arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
>diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>index 661567d2dd7a..017ccc2f4650 100644
>--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>@@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
> 		};
>
> 		timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5433-mct",
>+				     "samsung,exynos4210-mct";

Just a though, do we still need to keep Samsung,exyno4210-mct compatible?
In anyway:

Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>


> 			reg = <0x101c0000 0x800>;
> 			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
> 				<GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
>diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi
>b/arch/arm64/boot/dts/exynos/exynos850.dtsi
>index d1700e96fee2..12f7ddc6fd0a 100644
>--- a/arch/arm64/boot/dts/exynos/exynos850.dtsi
>+++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi
>@@ -181,7 +181,8 @@ chipid@10000000 {
> 		};
>
> 		timer@10040000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos850-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x10040000 0x800>;
> 			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
> 				     <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
>--
>2.32.0



^ permalink raw reply	[flat|nested] 18+ messages in thread

* RE: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
@ 2022-03-04 10:57       ` Alim Akhtar
  0 siblings, 0 replies; 18+ messages in thread
From: Alim Akhtar @ 2022-03-04 10:57 UTC (permalink / raw)
  To: 'Krzysztof Kozlowski', 'Daniel Lezcano',
	'Thomas Gleixner', 'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc



>-----Original Message-----
>From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>Sent: Friday, February 25, 2022 9:07 PM
>To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
><tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
><krzysztof.kozlowski@canonical.com>; Alim Akhtar
><alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>samsung-soc@vger.kernel.org
>Subject: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
>
>One compatible is used for the Multi-Core Timer on most of the Samsung
Exynos
>SoCs, which is correct but not specific enough.  These MCT blocks have
different
>number of interrupts, so add a second specific compatible to Exynos5433 and
>Exynos850.
>
>Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>---
> arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
>arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
>diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>index 661567d2dd7a..017ccc2f4650 100644
>--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>@@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
> 		};
>
> 		timer@101c0000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos5433-mct",
>+				     "samsung,exynos4210-mct";

Just a though, do we still need to keep Samsung,exyno4210-mct compatible?
In anyway:

Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>


> 			reg = <0x101c0000 0x800>;
> 			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
> 				<GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
>diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi
>b/arch/arm64/boot/dts/exynos/exynos850.dtsi
>index d1700e96fee2..12f7ddc6fd0a 100644
>--- a/arch/arm64/boot/dts/exynos/exynos850.dtsi
>+++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi
>@@ -181,7 +181,8 @@ chipid@10000000 {
> 		};
>
> 		timer@10040000 {
>-			compatible = "samsung,exynos4210-mct";
>+			compatible = "samsung,exynos850-mct",
>+				     "samsung,exynos4210-mct";
> 			reg = <0x10040000 0x800>;
> 			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
> 				     <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
>--
>2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
  2022-03-04 10:57       ` Alim Akhtar
@ 2022-03-04 12:00         ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-03-04 12:00 UTC (permalink / raw)
  To: Alim Akhtar, 'Daniel Lezcano', 'Thomas Gleixner',
	'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

On 04/03/2022 11:57, Alim Akhtar wrote:
> 
> 
>> -----Original Message-----
>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>> Sent: Friday, February 25, 2022 9:07 PM
>> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
>> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
>> <krzysztof.kozlowski@canonical.com>; Alim Akhtar
>> <alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org
>> Subject: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
>>
>> One compatible is used for the Multi-Core Timer on most of the Samsung
> Exynos
>> SoCs, which is correct but not specific enough.  These MCT blocks have
> different
>> number of interrupts, so add a second specific compatible to Exynos5433 and
>> Exynos850.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>> arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
>> arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
>> 2 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> index 661567d2dd7a..017ccc2f4650 100644
>> --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> @@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
>> 		};
>>
>> 		timer@101c0000 {
>> -			compatible = "samsung,exynos4210-mct";
>> +			compatible = "samsung,exynos5433-mct",
>> +				     "samsung,exynos4210-mct";
> 
> Just a though, do we still need to keep Samsung,exyno4210-mct compatible?
> In anyway:
> 
> Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>

Yes, otherwise we break all other projects using DTS from Linux kernel.
Also keeping it allows to apply DTS patches independently without
breaking bisectability.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
@ 2022-03-04 12:00         ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-03-04 12:00 UTC (permalink / raw)
  To: Alim Akhtar, 'Daniel Lezcano', 'Thomas Gleixner',
	'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

On 04/03/2022 11:57, Alim Akhtar wrote:
> 
> 
>> -----Original Message-----
>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>> Sent: Friday, February 25, 2022 9:07 PM
>> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
>> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
>> <krzysztof.kozlowski@canonical.com>; Alim Akhtar
>> <alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org
>> Subject: [PATCH 3/3] arm64: dts: exynos: add a specific compatible to MCT
>>
>> One compatible is used for the Multi-Core Timer on most of the Samsung
> Exynos
>> SoCs, which is correct but not specific enough.  These MCT blocks have
> different
>> number of interrupts, so add a second specific compatible to Exynos5433 and
>> Exynos850.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>> arch/arm64/boot/dts/exynos/exynos5433.dtsi | 3 ++-
>> arch/arm64/boot/dts/exynos/exynos850.dtsi  | 3 ++-
>> 2 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> index 661567d2dd7a..017ccc2f4650 100644
>> --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
>> @@ -806,7 +806,8 @@ tmu_isp: tmu@1007c000 {
>> 		};
>>
>> 		timer@101c0000 {
>> -			compatible = "samsung,exynos4210-mct";
>> +			compatible = "samsung,exynos5433-mct",
>> +				     "samsung,exynos4210-mct";
> 
> Just a though, do we still need to keep Samsung,exyno4210-mct compatible?
> In anyway:
> 
> Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>

Yes, otherwise we break all other projects using DTS from Linux kernel.
Also keeping it allows to apply DTS patches independently without
breaking bisectability.


Best regards,
Krzysztof

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
  2022-03-04 10:52     ` Alim Akhtar
@ 2022-03-04 12:02       ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-03-04 12:02 UTC (permalink / raw)
  To: Alim Akhtar, 'Daniel Lezcano', 'Thomas Gleixner',
	'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

On 04/03/2022 11:52, Alim Akhtar wrote:
> Hi Krzysztof
> 
>> -----Original Message-----
>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>> Sent: Friday, February 25, 2022 9:07 PM
>> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
>> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
>> <krzysztof.kozlowski@canonical.com>; Alim Akhtar
>> <alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org
>> Subject: [PATCH 1/3] 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@canonical.com>
>> ---
>> .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
>> 1 file changed, 52 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..d4e23fd7a1da 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,44 @@ 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
>> +
> 
> Probably you can update the list for tesla,fsd-mct as well in this patch
> (as the support was added recently)

Right.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts
@ 2022-03-04 12:02       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-03-04 12:02 UTC (permalink / raw)
  To: Alim Akhtar, 'Daniel Lezcano', 'Thomas Gleixner',
	'Rob Herring',
	linux-kernel, devicetree, linux-arm-kernel, linux-samsung-soc

On 04/03/2022 11:52, Alim Akhtar wrote:
> Hi Krzysztof
> 
>> -----Original Message-----
>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@canonical.com]
>> Sent: Friday, February 25, 2022 9:07 PM
>> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
>> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski
>> <krzysztof.kozlowski@canonical.com>; Alim Akhtar
>> <alim.akhtar@samsung.com>; linux-kernel@vger.kernel.org;
>> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org
>> Subject: [PATCH 1/3] 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@canonical.com>
>> ---
>> .../timer/samsung,exynos4210-mct.yaml         | 55 ++++++++++++++++++-
>> 1 file changed, 52 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..d4e23fd7a1da 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,44 @@ 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
>> +
> 
> Probably you can update the list for tesla,fsd-mct as well in this patch
> (as the support was added recently)

Right.


Best regards,
Krzysztof

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: (subset) [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
  2022-02-25 15:36     ` Krzysztof Kozlowski
@ 2022-04-04 17:01       ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-04 17:01 UTC (permalink / raw)
  To: Rob Herring, linux-samsung-soc, devicetree, linux-kernel,
	Daniel Lezcano, linux-arm-kernel, Alim Akhtar,
	Krzysztof Kozlowski, Thomas Gleixner
  Cc: Krzysztof Kozlowski

On Fri, 25 Feb 2022 16:36:49 +0100, Krzysztof Kozlowski wrote:
> One compatible is used for the Multi-Core Timer on most of the Samsung
> Exynos SoCs, which is correct but not specific enough.  These MCT blocks
> have different number of interrupts, so add a second specific
> compatible to Exynos3250 and all Exynos5 SoCs.
> 
> 

Applied, thanks!

[2/3] ARM: dts: exynos: add a specific compatible to MCT
      commit: cca50a59f60a6b2b5aa2c90d8c173da89f567ee3

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: (subset) [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT
@ 2022-04-04 17:01       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-04 17:01 UTC (permalink / raw)
  To: Rob Herring, linux-samsung-soc, devicetree, linux-kernel,
	Daniel Lezcano, linux-arm-kernel, Alim Akhtar,
	Krzysztof Kozlowski, Thomas Gleixner
  Cc: Krzysztof Kozlowski

On Fri, 25 Feb 2022 16:36:49 +0100, Krzysztof Kozlowski wrote:
> One compatible is used for the Multi-Core Timer on most of the Samsung
> Exynos SoCs, which is correct but not specific enough.  These MCT blocks
> have different number of interrupts, so add a second specific
> compatible to Exynos3250 and all Exynos5 SoCs.
> 
> 

Applied, thanks!

[2/3] ARM: dts: exynos: add a specific compatible to MCT
      commit: cca50a59f60a6b2b5aa2c90d8c173da89f567ee3

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2022-04-04 21:41 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CGME20220225180401epcas5p35d6c09ca6da36289d66d1bb0dcdeffa1@epcas5p3.samsung.com>
2022-02-25 15:36 ` [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts Krzysztof Kozlowski
2022-02-25 15:36   ` Krzysztof Kozlowski
2022-02-25 15:36   ` [PATCH 2/3] ARM: dts: exynos: add a specific compatible to MCT Krzysztof Kozlowski
2022-02-25 15:36     ` Krzysztof Kozlowski
2022-03-04 10:54     ` Alim Akhtar
2022-03-04 10:54       ` Alim Akhtar
2022-04-04 17:01     ` (subset) " Krzysztof Kozlowski
2022-04-04 17:01       ` Krzysztof Kozlowski
2022-02-25 15:36   ` [PATCH 3/3] arm64: " Krzysztof Kozlowski
2022-02-25 15:36     ` Krzysztof Kozlowski
2022-03-04 10:57     ` Alim Akhtar
2022-03-04 10:57       ` Alim Akhtar
2022-03-04 12:00       ` Krzysztof Kozlowski
2022-03-04 12:00         ` Krzysztof Kozlowski
2022-03-04 10:52   ` [PATCH 1/3] dt-bindings: timer: exynos4210-mct: describe known hardware and its interrupts Alim Akhtar
2022-03-04 10:52     ` Alim Akhtar
2022-03-04 12:02     ` Krzysztof Kozlowski
2022-03-04 12:02       ` Krzysztof Kozlowski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.