devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees
@ 2025-08-27 11:37 Svyatoslav Ryhel
  2025-08-27 11:37 ` [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+ Svyatoslav Ryhel
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Svyatoslav Ryhel @ 2025-08-27 11:37 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

Complete T114 and T124 device trees.

---
Changes in v5:
- dropped clock and reset names from TSEC schema
- removed clock and reset names from device nodes

Changes in v4:
- configured tsec schema to cover Tegra210 TSEC as well
- added required to tsec schema
- reset-names preserved for consistency with other host1x devices and align with T210
- added clock-names to align with T210
- operating-points-v2 check https://lore.kernel.org/lkml/20230119131033.117324-1-krzysztof.kozlowski@linaro.org/

Changes in v3:
- added tsec description
- swapped compatible back to use enum
- clock and reset description dropped, added maxItems: 1
- reset-names preserved for consistency with other host1x devices
- dropped interconnects and interconnect-names
- dropped isp nodename
- dropped multiple rest names for mpe/msenc
- dropped tegra114 msenc example
- fixed reset name in second isp in t124 dtsi

Changes in v2:
- dropped accepted commits
- added EPP, MPE and ISP compatibility for T114 and T124
- added TSEC schema
---

Svyatoslav Ryhel (4):
  dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for
    Tegra114+
  ARM: tegra114: add missing HOST1X device nodes
  ARM: tegra124: add missing HOST1X device nodes
  arm64: tegra210: drop redundant clock and reset names from TSEC node

 .../display/tegra/nvidia,tegra114-tsec.yaml   | 68 +++++++++++++++++++
 .../display/tegra/nvidia,tegra20-epp.yaml     | 14 ++--
 .../display/tegra/nvidia,tegra20-isp.yaml     | 15 ++--
 .../display/tegra/nvidia,tegra20-mpe.yaml     | 18 +++--
 arch/arm/boot/dts/nvidia/tegra114.dtsi        | 64 +++++++++++++++++
 arch/arm/boot/dts/nvidia/tegra124.dtsi        | 64 +++++++++++++++++
 arch/arm64/boot/dts/nvidia/tegra210.dtsi      |  2 -
 7 files changed, 230 insertions(+), 15 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml

-- 
2.48.1


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

* [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+
  2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
@ 2025-08-27 11:37 ` Svyatoslav Ryhel
  2025-08-29 16:50   ` Rob Herring (Arm)
  2025-08-27 11:37 ` [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes Svyatoslav Ryhel
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Svyatoslav Ryhel @ 2025-08-27 11:37 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

The current EPP, ISP and MPE schemas are largely compatible with Tegra114+,
requiring only minor adjustments. Additionally, the TSEC schema for the
Security engine, which is available from Tegra114 onwards, is included.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 .../display/tegra/nvidia,tegra114-tsec.yaml   | 68 +++++++++++++++++++
 .../display/tegra/nvidia,tegra20-epp.yaml     | 14 ++--
 .../display/tegra/nvidia,tegra20-isp.yaml     | 15 ++--
 .../display/tegra/nvidia,tegra20-mpe.yaml     | 18 +++--
 4 files changed, 102 insertions(+), 13 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml

diff --git a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml
new file mode 100644
index 000000000000..2c4d519a1bb7
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/tegra/nvidia,tegra114-tsec.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NVIDIA Tegra Security co-processor
+
+maintainers:
+  - Svyatoslav Ryhel <clamor95@gmail.com>
+  - Thierry Reding <thierry.reding@gmail.com>
+
+description: Tegra Security co-processor, an embedded security processor used
+  mainly to manage the HDCP encryption and keys on the HDMI link.
+
+properties:
+  compatible:
+    oneOf:
+      - enum:
+          - nvidia,tegra114-tsec
+          - nvidia,tegra124-tsec
+          - nvidia,tegra210-tsec
+
+      - items:
+          - const: nvidia,tegra132-tsec
+          - const: nvidia,tegra124-tsec
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+  resets:
+    maxItems: 1
+
+  iommus:
+    maxItems: 1
+
+  operating-points-v2: true
+
+  power-domains:
+    maxItems: 1
+
+additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - resets
+
+examples:
+  - |
+    #include <dt-bindings/clock/tegra114-car.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+    tsec@54500000 {
+        compatible = "nvidia,tegra114-tsec";
+        reg = <0x54500000 0x00040000>;
+        interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
+        clocks = <&tegra_car TEGRA114_CLK_TSEC>;
+        resets = <&tegra_car TEGRA114_CLK_TSEC>;
+    };
diff --git a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-epp.yaml b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-epp.yaml
index 3c095a5491fe..334f5531b243 100644
--- a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-epp.yaml
+++ b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-epp.yaml
@@ -15,10 +15,16 @@ properties:
     pattern: "^epp@[0-9a-f]+$"
 
   compatible:
-    enum:
-      - nvidia,tegra20-epp
-      - nvidia,tegra30-epp
-      - nvidia,tegra114-epp
+    oneOf:
+      - enum:
+          - nvidia,tegra20-epp
+          - nvidia,tegra30-epp
+          - nvidia,tegra114-epp
+          - nvidia,tegra124-epp
+
+      - items:
+          - const: nvidia,tegra132-epp
+          - const: nvidia,tegra124-epp
 
   reg:
     maxItems: 1
diff --git a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-isp.yaml b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-isp.yaml
index 3bc3b22e98e1..ee25b5e6f1a2 100644
--- a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-isp.yaml
+++ b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-isp.yaml
@@ -12,10 +12,17 @@ maintainers:
 
 properties:
   compatible:
-    enum:
-      - nvidia,tegra20-isp
-      - nvidia,tegra30-isp
-      - nvidia,tegra210-isp
+    oneOf:
+      - enum:
+          - nvidia,tegra20-isp
+          - nvidia,tegra30-isp
+          - nvidia,tegra114-isp
+          - nvidia,tegra124-isp
+          - nvidia,tegra210-isp
+
+      - items:
+          - const: nvidia,tegra132-isp
+          - const: nvidia,tegra124-isp
 
   reg:
     maxItems: 1
diff --git a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-mpe.yaml b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-mpe.yaml
index 2cd3e60cd0a8..36b76fa8f525 100644
--- a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-mpe.yaml
+++ b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-mpe.yaml
@@ -12,13 +12,21 @@ maintainers:
 
 properties:
   $nodename:
-    pattern: "^mpe@[0-9a-f]+$"
+    oneOf:
+      - pattern: "^mpe@[0-9a-f]+$"
+      - pattern: "^msenc@[0-9a-f]+$"
 
   compatible:
-    enum:
-      - nvidia,tegra20-mpe
-      - nvidia,tegra30-mpe
-      - nvidia,tegra114-mpe
+    oneOf:
+      - enum:
+          - nvidia,tegra20-mpe
+          - nvidia,tegra30-mpe
+          - nvidia,tegra114-msenc
+          - nvidia,tegra124-msenc
+
+      - items:
+          - const: nvidia,tegra132-msenc
+          - const: nvidia,tegra124-msenc
 
   reg:
     maxItems: 1
-- 
2.48.1


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

* [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes
  2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
  2025-08-27 11:37 ` [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+ Svyatoslav Ryhel
@ 2025-08-27 11:37 ` Svyatoslav Ryhel
  2025-09-17  2:44   ` Mikko Perttunen
  2025-08-27 11:37 ` [PATCH v5 3/4] ARM: tegra124: " Svyatoslav Ryhel
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Svyatoslav Ryhel @ 2025-08-27 11:37 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

Add nodes for devices on the HOST1X bus: VI, EPP, ISP, MSENC and TSEC.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 arch/arm/boot/dts/nvidia/tegra114.dtsi | 64 ++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/arch/arm/boot/dts/nvidia/tegra114.dtsi b/arch/arm/boot/dts/nvidia/tegra114.dtsi
index 4caf2073c556..8600a5c52be9 100644
--- a/arch/arm/boot/dts/nvidia/tegra114.dtsi
+++ b/arch/arm/boot/dts/nvidia/tegra114.dtsi
@@ -47,6 +47,45 @@ host1x@50000000 {
 
 		ranges = <0x54000000 0x54000000 0x01000000>;
 
+		vi@54080000 {
+			compatible = "nvidia,tegra114-vi";
+			reg = <0x54080000 0x00040000>;
+			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA114_CLK_VI>;
+			resets = <&tegra_car 20>;
+			reset-names = "vi";
+
+			iommus = <&mc TEGRA_SWGROUP_VI>;
+
+			status = "disabled";
+		};
+
+		epp@540c0000 {
+			compatible = "nvidia,tegra114-epp";
+			reg = <0x540c0000 0x00040000>;
+			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA114_CLK_EPP>;
+			resets = <&tegra_car TEGRA114_CLK_EPP>;
+			reset-names = "epp";
+
+			iommus = <&mc TEGRA_SWGROUP_EPP>;
+
+			status = "disabled";
+		};
+
+		isp@54100000 {
+			compatible = "nvidia,tegra114-isp";
+			reg = <0x54100000 0x00040000>;
+			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA114_CLK_ISP>;
+			resets = <&tegra_car TEGRA114_CLK_ISP>;
+			reset-names = "isp";
+
+			iommus = <&mc TEGRA_SWGROUP_ISP>;
+
+			status = "disabled";
+		};
+
 		gr2d@54140000 {
 			compatible = "nvidia,tegra114-gr2d";
 			reg = <0x54140000 0x00040000>;
@@ -149,6 +188,31 @@ dsib: dsi@54400000 {
 			#address-cells = <1>;
 			#size-cells = <0>;
 		};
+
+		msenc@544c0000 {
+			compatible = "nvidia,tegra114-msenc";
+			reg = <0x544c0000 0x00040000>;
+			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA114_CLK_MSENC>;
+			resets = <&tegra_car TEGRA114_CLK_MSENC>;
+			reset-names = "mpe";
+
+			iommus = <&mc TEGRA_SWGROUP_MSENC>;
+
+			status = "disabled";
+		};
+
+		tsec@54500000 {
+			compatible = "nvidia,tegra114-tsec";
+			reg = <0x54500000 0x00040000>;
+			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA114_CLK_TSEC>;
+			resets = <&tegra_car TEGRA114_CLK_TSEC>;
+
+			iommus = <&mc TEGRA_SWGROUP_TSEC>;
+
+			status = "disabled";
+		};
 	};
 
 	gic: interrupt-controller@50041000 {
-- 
2.48.1


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

* [PATCH v5 3/4] ARM: tegra124: add missing HOST1X device nodes
  2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
  2025-08-27 11:37 ` [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+ Svyatoslav Ryhel
  2025-08-27 11:37 ` [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes Svyatoslav Ryhel
@ 2025-08-27 11:37 ` Svyatoslav Ryhel
  2025-08-27 11:37 ` [PATCH v5 4/4] arm64: tegra210: drop redundant clock and reset names from TSEC node Svyatoslav Ryhel
  2025-09-18  1:41 ` [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Mikko Perttunen
  4 siblings, 0 replies; 9+ messages in thread
From: Svyatoslav Ryhel @ 2025-08-27 11:37 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

Add nodes for devices on the HOST1X bus: VI, ISP, ISPB, MSENC and TSEC.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 arch/arm/boot/dts/nvidia/tegra124.dtsi | 64 ++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/arch/arm/boot/dts/nvidia/tegra124.dtsi b/arch/arm/boot/dts/nvidia/tegra124.dtsi
index ec4f0e346b2b..ce4efa1de509 100644
--- a/arch/arm/boot/dts/nvidia/tegra124.dtsi
+++ b/arch/arm/boot/dts/nvidia/tegra124.dtsi
@@ -103,6 +103,45 @@ host1x@50000000 {
 
 		ranges = <0 0x54000000 0 0x54000000 0 0x01000000>;
 
+		vi@54080000 {
+			compatible = "nvidia,tegra124-vi";
+			reg = <0x0 0x54080000 0x0 0x00040000>;
+			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA124_CLK_VI>;
+			resets = <&tegra_car 20>;
+			reset-names = "vi";
+
+			iommus = <&mc TEGRA_SWGROUP_VI>;
+
+			status = "disabled";
+		};
+
+		isp@54600000 {
+			compatible = "nvidia,tegra124-isp";
+			reg = <0x0 0x54600000 0x0 0x00040000>;
+			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA124_CLK_ISP>;
+			resets = <&tegra_car TEGRA124_CLK_ISP>;
+			reset-names = "isp";
+
+			iommus = <&mc TEGRA_SWGROUP_ISP2>;
+
+			status = "disabled";
+		};
+
+		isp@54680000 {
+			compatible = "nvidia,tegra124-isp";
+			reg = <0x0 0x54680000 0x0 0x00040000>;
+			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA124_CLK_ISPB>;
+			resets = <&tegra_car TEGRA124_CLK_ISPB>;
+			reset-names = "isp";
+
+			iommus = <&mc TEGRA_SWGROUP_ISP2B>;
+
+			status = "disabled";
+		};
+
 		dc@54200000 {
 			compatible = "nvidia,tegra124-dc";
 			reg = <0x0 0x54200000 0x0 0x00040000>;
@@ -209,6 +248,31 @@ dsib: dsi@54400000 {
 			#size-cells = <0>;
 		};
 
+		msenc@544c0000 {
+			compatible = "nvidia,tegra124-msenc";
+			reg = <0x0 0x544c0000 0x0 0x00040000>;
+			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA124_CLK_MSENC>;
+			resets = <&tegra_car TEGRA124_CLK_MSENC>;
+			reset-names = "mpe";
+
+			iommus = <&mc TEGRA_SWGROUP_MSENC>;
+
+			status = "disabled";
+		};
+
+		tsec@54500000 {
+			compatible = "nvidia,tegra124-tsec";
+			reg = <0x0 0x54500000 0x0 0x00040000>;
+			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&tegra_car TEGRA124_CLK_TSEC>;
+			resets = <&tegra_car TEGRA124_CLK_TSEC>;
+
+			iommus = <&mc TEGRA_SWGROUP_TSEC>;
+
+			status = "disabled";
+		};
+
 		sor@54540000 {
 			compatible = "nvidia,tegra124-sor";
 			reg = <0x0 0x54540000 0x0 0x00040000>;
-- 
2.48.1


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

* [PATCH v5 4/4] arm64: tegra210: drop redundant clock and reset names from TSEC node
  2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
                   ` (2 preceding siblings ...)
  2025-08-27 11:37 ` [PATCH v5 3/4] ARM: tegra124: " Svyatoslav Ryhel
@ 2025-08-27 11:37 ` Svyatoslav Ryhel
  2025-09-18  1:41 ` [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Mikko Perttunen
  4 siblings, 0 replies; 9+ messages in thread
From: Svyatoslav Ryhel @ 2025-08-27 11:37 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

Clock and reset names are not needed if node contains only one clocks and
one reset.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 arch/arm64/boot/dts/nvidia/tegra210.dtsi | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/arm64/boot/dts/nvidia/tegra210.dtsi b/arch/arm64/boot/dts/nvidia/tegra210.dtsi
index 942e3a0f81ed..cbe54c4e5da8 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra210.dtsi
@@ -183,9 +183,7 @@ tsec@54100000 {
 			reg = <0x0 0x54100000 0x0 0x00040000>;
 			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
 			clocks = <&tegra_car TEGRA210_CLK_TSEC>;
-			clock-names = "tsec";
 			resets = <&tegra_car 83>;
-			reset-names = "tsec";
 			status = "disabled";
 		};
 
-- 
2.48.1


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

* Re: [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+
  2025-08-27 11:37 ` [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+ Svyatoslav Ryhel
@ 2025-08-29 16:50   ` Rob Herring (Arm)
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-08-29 16:50 UTC (permalink / raw)
  To: Svyatoslav Ryhel
  Cc: Krzysztof Kozlowski, linux-tegra, Conor Dooley, linux-kernel,
	Jonathan Hunter, Thierry Reding, devicetree, Thierry Reding


On Wed, 27 Aug 2025 14:37:31 +0300, Svyatoslav Ryhel wrote:
> The current EPP, ISP and MPE schemas are largely compatible with Tegra114+,
> requiring only minor adjustments. Additionally, the TSEC schema for the
> Security engine, which is available from Tegra114 onwards, is included.
> 
> Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
> ---
>  .../display/tegra/nvidia,tegra114-tsec.yaml   | 68 +++++++++++++++++++
>  .../display/tegra/nvidia,tegra20-epp.yaml     | 14 ++--
>  .../display/tegra/nvidia,tegra20-isp.yaml     | 15 ++--
>  .../display/tegra/nvidia,tegra20-mpe.yaml     | 18 +++--
>  4 files changed, 102 insertions(+), 13 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


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

* Re: [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes
  2025-08-27 11:37 ` [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes Svyatoslav Ryhel
@ 2025-09-17  2:44   ` Mikko Perttunen
  2025-09-17  4:09     ` Svyatoslav
  0 siblings, 1 reply; 9+ messages in thread
From: Mikko Perttunen @ 2025-09-17  2:44 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel,
	Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

On Wednesday, August 27, 2025 8:37 PM Svyatoslav Ryhel wrote:
> Add nodes for devices on the HOST1X bus: VI, EPP, ISP, MSENC and TSEC.
> 
> Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
> ---
>  arch/arm/boot/dts/nvidia/tegra114.dtsi | 64 ++++++++++++++++++++++++++
>  1 file changed, 64 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/nvidia/tegra114.dtsi b/arch/arm/boot/dts/nvidia/tegra114.dtsi
> index 4caf2073c556..8600a5c52be9 100644
> --- a/arch/arm/boot/dts/nvidia/tegra114.dtsi
> +++ b/arch/arm/boot/dts/nvidia/tegra114.dtsi
> @@ -47,6 +47,45 @@ host1x@50000000 {
>  
>  		ranges = <0x54000000 0x54000000 0x01000000>;
>  
> +		vi@54080000 {
> +			compatible = "nvidia,tegra114-vi";
> +			reg = <0x54080000 0x00040000>;
> +			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&tegra_car TEGRA114_CLK_VI>;
> +			resets = <&tegra_car 20>;
> +			reset-names = "vi";

You are adding reset-names here, but in the last patch you're removing it where there's only one reset?

> +
> +			iommus = <&mc TEGRA_SWGROUP_VI>;
> +
> +			status = "disabled";
> +		};
> +
> +		epp@540c0000 {
> +			compatible = "nvidia,tegra114-epp";
> +			reg = <0x540c0000 0x00040000>;
> +			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&tegra_car TEGRA114_CLK_EPP>;
> +			resets = <&tegra_car TEGRA114_CLK_EPP>;
> +			reset-names = "epp";
> +
> +			iommus = <&mc TEGRA_SWGROUP_EPP>;
> +
> +			status = "disabled";
> +		};
> +
> +		isp@54100000 {
> +			compatible = "nvidia,tegra114-isp";
> +			reg = <0x54100000 0x00040000>;
> +			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&tegra_car TEGRA114_CLK_ISP>;
> +			resets = <&tegra_car TEGRA114_CLK_ISP>;
> +			reset-names = "isp";
> +
> +			iommus = <&mc TEGRA_SWGROUP_ISP>;
> +
> +			status = "disabled";
> +		};
> +
>  		gr2d@54140000 {
>  			compatible = "nvidia,tegra114-gr2d";
>  			reg = <0x54140000 0x00040000>;
> @@ -149,6 +188,31 @@ dsib: dsi@54400000 {
>  			#address-cells = <1>;
>  			#size-cells = <0>;
>  		};
> +
> +		msenc@544c0000 {
> +			compatible = "nvidia,tegra114-msenc";
> +			reg = <0x544c0000 0x00040000>;
> +			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&tegra_car TEGRA114_CLK_MSENC>;
> +			resets = <&tegra_car TEGRA114_CLK_MSENC>;
> +			reset-names = "mpe";

FWIW, I think 'msenc' is the appropriate name to use on Tegra114/Tegra124. I believe MPE is a remnant from older chips, even if some downstream (and I guess upstreaming) naming still uses it.

> +
> +			iommus = <&mc TEGRA_SWGROUP_MSENC>;
> +
> +			status = "disabled";
> +		};
> +
> +		tsec@54500000 {
> +			compatible = "nvidia,tegra114-tsec";
> +			reg = <0x54500000 0x00040000>;
> +			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&tegra_car TEGRA114_CLK_TSEC>;
> +			resets = <&tegra_car TEGRA114_CLK_TSEC>;
> +
> +			iommus = <&mc TEGRA_SWGROUP_TSEC>;
> +
> +			status = "disabled";
> +		};
>  	};
>  
>  	gic: interrupt-controller@50041000 {
> 




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

* Re: [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes
  2025-09-17  2:44   ` Mikko Perttunen
@ 2025-09-17  4:09     ` Svyatoslav
  0 siblings, 0 replies; 9+ messages in thread
From: Svyatoslav @ 2025-09-17  4:09 UTC (permalink / raw)
  To: Mikko Perttunen, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding, Thierry Reding, Jonathan Hunter
  Cc: devicetree, linux-tegra, linux-kernel



17 вересня 2025 р. 05:44:42 GMT+03:00, Mikko Perttunen <mperttunen@nvidia.com> пише:
>On Wednesday, August 27, 2025 8:37 PM Svyatoslav Ryhel wrote:
>> Add nodes for devices on the HOST1X bus: VI, EPP, ISP, MSENC and TSEC.
>> 
>> Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
>> ---
>>  arch/arm/boot/dts/nvidia/tegra114.dtsi | 64 ++++++++++++++++++++++++++
>>  1 file changed, 64 insertions(+)
>> 
>> diff --git a/arch/arm/boot/dts/nvidia/tegra114.dtsi b/arch/arm/boot/dts/nvidia/tegra114.dtsi
>> index 4caf2073c556..8600a5c52be9 100644
>> --- a/arch/arm/boot/dts/nvidia/tegra114.dtsi
>> +++ b/arch/arm/boot/dts/nvidia/tegra114.dtsi
>> @@ -47,6 +47,45 @@ host1x@50000000 {
>>  
>>  		ranges = <0x54000000 0x54000000 0x01000000>;
>>  
>> +		vi@54080000 {
>> +			compatible = "nvidia,tegra114-vi";
>> +			reg = <0x54080000 0x00040000>;
>> +			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
>> +			clocks = <&tegra_car TEGRA114_CLK_VI>;
>> +			resets = <&tegra_car 20>;
>> +			reset-names = "vi";
>
>You are adding reset-names here, but in the last patch you're removing it where there's only one reset?

I am not "adding" it, it is present in the existing schema and I am making node accordingly. I have no intention to touch schema unless it is absolutely necessary.

>> +
>> +			iommus = <&mc TEGRA_SWGROUP_VI>;
>> +
>> +			status = "disabled";
>> +		};
>> +
>> +		epp@540c0000 {
>> +			compatible = "nvidia,tegra114-epp";
>> +			reg = <0x540c0000 0x00040000>;
>> +			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
>> +			clocks = <&tegra_car TEGRA114_CLK_EPP>;
>> +			resets = <&tegra_car TEGRA114_CLK_EPP>;
>> +			reset-names = "epp";
>> +
>> +			iommus = <&mc TEGRA_SWGROUP_EPP>;
>> +
>> +			status = "disabled";
>> +		};
>> +
>> +		isp@54100000 {
>> +			compatible = "nvidia,tegra114-isp";
>> +			reg = <0x54100000 0x00040000>;
>> +			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
>> +			clocks = <&tegra_car TEGRA114_CLK_ISP>;
>> +			resets = <&tegra_car TEGRA114_CLK_ISP>;
>> +			reset-names = "isp";
>> +
>> +			iommus = <&mc TEGRA_SWGROUP_ISP>;
>> +
>> +			status = "disabled";
>> +		};
>> +
>>  		gr2d@54140000 {
>>  			compatible = "nvidia,tegra114-gr2d";
>>  			reg = <0x54140000 0x00040000>;
>> @@ -149,6 +188,31 @@ dsib: dsi@54400000 {
>>  			#address-cells = <1>;
>>  			#size-cells = <0>;
>>  		};
>> +
>> +		msenc@544c0000 {
>> +			compatible = "nvidia,tegra114-msenc";
>> +			reg = <0x544c0000 0x00040000>;
>> +			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
>> +			clocks = <&tegra_car TEGRA114_CLK_MSENC>;
>> +			resets = <&tegra_car TEGRA114_CLK_MSENC>;
>> +			reset-names = "mpe";
>
>FWIW, I think 'msenc' is the appropriate name to use on Tegra114/Tegra124. I believe MPE is a remnant from older chips, even if some downstream (and I guess upstreaming) naming still uses it.
>

Same here, I am making those according to schema and I will not touch it if not neceserry.

>> +
>> +			iommus = <&mc TEGRA_SWGROUP_MSENC>;
>> +
>> +			status = "disabled";
>> +		};
>> +
>> +		tsec@54500000 {
>> +			compatible = "nvidia,tegra114-tsec";
>> +			reg = <0x54500000 0x00040000>;
>> +			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
>> +			clocks = <&tegra_car TEGRA114_CLK_TSEC>;
>> +			resets = <&tegra_car TEGRA114_CLK_TSEC>;
>> +
>> +			iommus = <&mc TEGRA_SWGROUP_TSEC>;
>> +
>> +			status = "disabled";
>> +		};
>>  	};
>>  
>>  	gic: interrupt-controller@50041000 {
>> 
>
>
>

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

* Re: [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees
  2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
                   ` (3 preceding siblings ...)
  2025-08-27 11:37 ` [PATCH v5 4/4] arm64: tegra210: drop redundant clock and reset names from TSEC node Svyatoslav Ryhel
@ 2025-09-18  1:41 ` Mikko Perttunen
  4 siblings, 0 replies; 9+ messages in thread
From: Mikko Perttunen @ 2025-09-18  1:41 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Thierry Reding, Jonathan Hunter, Svyatoslav Ryhel,
	Svyatoslav Ryhel
  Cc: devicetree, linux-tegra, linux-kernel

On Wednesday, August 27, 2025 8:37 PM Svyatoslav Ryhel wrote:
> Complete T114 and T124 device trees.
> 
> ---
> Changes in v5:
> - dropped clock and reset names from TSEC schema
> - removed clock and reset names from device nodes
> 
> Changes in v4:
> - configured tsec schema to cover Tegra210 TSEC as well
> - added required to tsec schema
> - reset-names preserved for consistency with other host1x devices and align with T210
> - added clock-names to align with T210
> - operating-points-v2 check https://lore.kernel.org/lkml/20230119131033.117324-1-krzysztof.kozlowski@linaro.org/
> 
> Changes in v3:
> - added tsec description
> - swapped compatible back to use enum
> - clock and reset description dropped, added maxItems: 1
> - reset-names preserved for consistency with other host1x devices
> - dropped interconnects and interconnect-names
> - dropped isp nodename
> - dropped multiple rest names for mpe/msenc
> - dropped tegra114 msenc example
> - fixed reset name in second isp in t124 dtsi
> 
> Changes in v2:
> - dropped accepted commits
> - added EPP, MPE and ISP compatibility for T114 and T124
> - added TSEC schema
> ---
> 
> Svyatoslav Ryhel (4):
>   dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for
>     Tegra114+
>   ARM: tegra114: add missing HOST1X device nodes
>   ARM: tegra124: add missing HOST1X device nodes
>   arm64: tegra210: drop redundant clock and reset names from TSEC node
> 
>  .../display/tegra/nvidia,tegra114-tsec.yaml   | 68 +++++++++++++++++++
>  .../display/tegra/nvidia,tegra20-epp.yaml     | 14 ++--
>  .../display/tegra/nvidia,tegra20-isp.yaml     | 15 ++--
>  .../display/tegra/nvidia,tegra20-mpe.yaml     | 18 +++--
>  arch/arm/boot/dts/nvidia/tegra114.dtsi        | 64 +++++++++++++++++
>  arch/arm/boot/dts/nvidia/tegra124.dtsi        | 64 +++++++++++++++++
>  arch/arm64/boot/dts/nvidia/tegra210.dtsi      |  2 -
>  7 files changed, 230 insertions(+), 15 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/display/tegra/nvidia,tegra114-tsec.yaml
> 
> 

Series,

Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>




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

end of thread, other threads:[~2025-09-18  1:41 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-27 11:37 [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Svyatoslav Ryhel
2025-08-27 11:37 ` [PATCH v5 1/4] dt-bindings: display: tegra: document EPP, ISP, MPE and TSEC for Tegra114+ Svyatoslav Ryhel
2025-08-29 16:50   ` Rob Herring (Arm)
2025-08-27 11:37 ` [PATCH v5 2/4] ARM: tegra114: add missing HOST1X device nodes Svyatoslav Ryhel
2025-09-17  2:44   ` Mikko Perttunen
2025-09-17  4:09     ` Svyatoslav
2025-08-27 11:37 ` [PATCH v5 3/4] ARM: tegra124: " Svyatoslav Ryhel
2025-08-27 11:37 ` [PATCH v5 4/4] arm64: tegra210: drop redundant clock and reset names from TSEC node Svyatoslav Ryhel
2025-09-18  1:41 ` [PATCH v5 0/4] ARM: tegra: complete Tegra 4 and Tegra K1 device trees Mikko Perttunen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).