Devicetree
 help / color / mirror / Atom feed
* [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes
@ 2026-11-05 22:34 Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 1/7] dt-bindings: arm: vexpress-sysreg: Add "mcc" child node Rob Herring (Arm)
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

This is a batch of schema warning fixes mainly for 32-bit Arm, Ltd 
boards. While all these are 32-bit Arm fixes, vexpress-v2m-rs1.dtsi is 
included by vexpress-v2f-1xv7-ca53x2.dts which is 64-bit platform. Patch 
2 fixes the last DT schema warning on 64-bit Arm Ltd boards. Yay! For 
32-bit boards, this cuts the remaining warnings in ~half.

I verified the config-bus devices still probe after moving 'mcc' node 
with arm/vexpress-v2p-ca15-tc1.dts on QEMU.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Rob Herring (Arm) (7):
      dt-bindings: arm: vexpress-sysreg: Add "mcc" child node
      ARM: dts: arm/vexpress: Move "arm,vexpress,config-bus" node into sysreg node
      ARM: dts: arm/vexpress-v2m: Move regulator and led nodes out of bus
      ARM: dts: arm: Use standard node names
      ARM: dts: arm: Add missing "#dma-cells"
      ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles
      ARM: dts: arm-realview-eb-mp: Move "pmu" node to top-level

 .../devicetree/bindings/arm/vexpress-sysreg.yaml   |   8 +
 arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi      |  20 +-
 arch/arm/boot/dts/arm/arm-realview-eb.dtsi         |   8 +-
 arch/arm/boot/dts/arm/arm-realview-pb1176.dts      |   8 +-
 arch/arm/boot/dts/arm/arm-realview-pb11mp.dts      |   6 +-
 arch/arm/boot/dts/arm/arm-realview-pbx.dtsi        |  10 +-
 arch/arm/boot/dts/arm/integrator.dtsi              |   2 +-
 arch/arm/boot/dts/arm/integratorap-im-pd1.dts      |   2 +-
 arch/arm/boot/dts/arm/integratorap.dts             |   2 +-
 arch/arm/boot/dts/arm/integratorcp.dts             |   4 +-
 arch/arm/boot/dts/arm/mps2-an385.dts               |   2 +-
 arch/arm/boot/dts/arm/mps2-an399.dts               |   2 +-
 arch/arm/boot/dts/arm/mps2.dtsi                    |   4 +-
 arch/arm/boot/dts/arm/versatile-ab.dts             |  11 +-
 arch/arm/boot/dts/arm/versatile-pb.dts             |   4 +-
 arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi        | 146 +++++-----
 arch/arm/boot/dts/arm/vexpress-v2m.dtsi            | 322 ++++++++++-----------
 arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts    |   9 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts     |   9 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts        |   4 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts         |   2 +-
 21 files changed, 298 insertions(+), 287 deletions(-)
---
base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
change-id: 20261105-dt-vexpress-dts-fixes-a8ccb34b1fe5

Best regards,
--  
Rob Herring (Arm) <robh@kernel.org>


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

* [PATCH 1/7] dt-bindings: arm: vexpress-sysreg: Add "mcc" child node
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 2/7] ARM: dts: arm/vexpress: Move "arm,vexpress,config-bus" node into sysreg node Rob Herring (Arm)
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

The "arm,vexpress,config-bus" is accessed via the "arm,vexpress-sysreg"
registers, so it is appropriate for it to be located there rather than
in a "simple-bus" as current DTS files have. Under the "simple-bus" is
not appropriate given there is no MMIO space.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml b/Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
index be6e3b542569..5b34fe20b313 100644
--- a/Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
+++ b/Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
@@ -36,6 +36,14 @@ properties:
     deprecated: true
     const: 2
 
+  mcc:
+    type: object
+    additionalProperties: true
+
+    properties:
+      compatible:
+        const: arm,vexpress,config-bus
+
 additionalProperties: false
 
 patternProperties:

-- 
2.53.0


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

* [PATCH 2/7] ARM: dts: arm/vexpress: Move "arm,vexpress,config-bus" node into sysreg node
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 1/7] dt-bindings: arm: vexpress-sysreg: Add "mcc" child node Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 3/7] ARM: dts: arm/vexpress-v2m: Move regulator and led nodes out of bus Rob Herring (Arm)
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

The "arm,vexpress,config-bus" is accessed via the "arm,vexpress-sysreg"
registers, so it is appropriate for it to be located there rather than
in a "simple-bus" node. Under the "simple-bus" is not appropriate given
there is no MMIO space.

Unlike the prior attempt in commit d9258898ad49 ("arm64: dts: arm:
vexpress: Move fixed devices out of bus node") which got partially
reverted, the "arm,vexpress,site" property will be correctly found in a
parent node now.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi | 146 ++++++++++++++--------------
 arch/arm/boot/dts/arm/vexpress-v2m.dtsi     | 146 ++++++++++++++--------------
 2 files changed, 146 insertions(+), 146 deletions(-)

diff --git a/arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi b/arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi
index 248b8e492d43..e12d44269a2f 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi
+++ b/arch/arm/boot/dts/arm/vexpress-v2m-rs1.dtsi
@@ -233,6 +233,79 @@ v2m_flash_gpios: gpio@4c {
 						gpio-controller;
 						#gpio-cells = <2>;
 					};
+
+					mcc {
+						compatible = "arm,vexpress,config-bus";
+						arm,vexpress,config-bridge = <&v2m_sysreg>;
+
+						clock-controller-0 {
+							/* MCC static memory clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 0>;
+							freq-range = <25000000 60000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk0";
+						};
+
+						v2m_oscclk1: clock-controller-1 {
+							/* CLCD clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 1>;
+							freq-range = <23750000 65000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk1";
+						};
+
+						v2m_oscclk2: clock-controller-2 {
+							/* IO FPGA peripheral clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 2>;
+							freq-range = <24000000 24000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk2";
+						};
+
+						regulator-vio {
+							/* Logic level voltage */
+							compatible = "arm,vexpress-volt";
+							arm,vexpress-sysreg,func = <2 0>;
+							regulator-name = "VIO";
+							regulator-always-on;
+							label = "VIO";
+						};
+
+						temp-mcc {
+							/* MCC internal operating temperature */
+							compatible = "arm,vexpress-temp";
+							arm,vexpress-sysreg,func = <4 0>;
+							label = "MCC";
+						};
+
+						reset {
+							compatible = "arm,vexpress-reset";
+							arm,vexpress-sysreg,func = <5 0>;
+						};
+
+						muxfpga {
+							compatible = "arm,vexpress-muxfpga";
+							arm,vexpress-sysreg,func = <7 0>;
+						};
+
+						shutdown {
+							compatible = "arm,vexpress-shutdown";
+							arm,vexpress-sysreg,func = <8 0>;
+						};
+
+						reboot {
+							compatible = "arm,vexpress-reboot";
+							arm,vexpress-sysreg,func = <9 0>;
+						};
+
+						dvimode {
+							compatible = "arm,vexpress-dvimode";
+							arm,vexpress-sysreg,func = <11 0>;
+						};
+					};
 				};
 
 				v2m_sysctl: sysctl@20000 {
@@ -415,79 +488,6 @@ clcd_pads: endpoint {
 						};
 					};
 				};
-
-				mcc {
-					compatible = "arm,vexpress,config-bus";
-					arm,vexpress,config-bridge = <&v2m_sysreg>;
-
-					clock-controller-0 {
-						/* MCC static memory clock */
-						compatible = "arm,vexpress-osc";
-						arm,vexpress-sysreg,func = <1 0>;
-						freq-range = <25000000 60000000>;
-						#clock-cells = <0>;
-						clock-output-names = "v2m:oscclk0";
-					};
-
-					v2m_oscclk1: clock-controller-1 {
-						/* CLCD clock */
-						compatible = "arm,vexpress-osc";
-						arm,vexpress-sysreg,func = <1 1>;
-						freq-range = <23750000 65000000>;
-						#clock-cells = <0>;
-						clock-output-names = "v2m:oscclk1";
-					};
-
-					v2m_oscclk2: clock-controller-2 {
-						/* IO FPGA peripheral clock */
-						compatible = "arm,vexpress-osc";
-						arm,vexpress-sysreg,func = <1 2>;
-						freq-range = <24000000 24000000>;
-						#clock-cells = <0>;
-						clock-output-names = "v2m:oscclk2";
-					};
-
-					regulator-vio {
-						/* Logic level voltage */
-						compatible = "arm,vexpress-volt";
-						arm,vexpress-sysreg,func = <2 0>;
-						regulator-name = "VIO";
-						regulator-always-on;
-						label = "VIO";
-					};
-
-					temp-mcc {
-						/* MCC internal operating temperature */
-						compatible = "arm,vexpress-temp";
-						arm,vexpress-sysreg,func = <4 0>;
-						label = "MCC";
-					};
-
-					reset {
-						compatible = "arm,vexpress-reset";
-						arm,vexpress-sysreg,func = <5 0>;
-					};
-
-					muxfpga {
-						compatible = "arm,vexpress-muxfpga";
-						arm,vexpress-sysreg,func = <7 0>;
-					};
-
-					shutdown {
-						compatible = "arm,vexpress-shutdown";
-						arm,vexpress-sysreg,func = <8 0>;
-					};
-
-					reboot {
-						compatible = "arm,vexpress-reboot";
-						arm,vexpress-sysreg,func = <9 0>;
-					};
-
-					dvimode {
-						compatible = "arm,vexpress-dvimode";
-						arm,vexpress-sysreg,func = <11 0>;
-					};
-				};
 			};
 		};
 	};
diff --git a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
index be03f2a8a57a..2a8d1d6dfc7e 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
+++ b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
@@ -153,6 +153,79 @@ v2m_flash_gpios: gpio@4c {
 						gpio-controller;
 						#gpio-cells = <2>;
 					};
+
+					mcc {
+						compatible = "arm,vexpress,config-bus";
+						arm,vexpress,config-bridge = <&v2m_sysreg>;
+
+						clock-controller-0 {
+							/* MCC static memory clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 0>;
+							freq-range = <25000000 60000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk0";
+						};
+
+						v2m_oscclk1: clock-controller-1 {
+							/* CLCD clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 1>;
+							freq-range = <23750000 65000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk1";
+						};
+
+						v2m_oscclk2: clock-controller-2 {
+							/* IO FPGA peripheral clock */
+							compatible = "arm,vexpress-osc";
+							arm,vexpress-sysreg,func = <1 2>;
+							freq-range = <24000000 24000000>;
+							#clock-cells = <0>;
+							clock-output-names = "v2m:oscclk2";
+						};
+
+						regulator-vio {
+							/* Logic level voltage */
+							compatible = "arm,vexpress-volt";
+							arm,vexpress-sysreg,func = <2 0>;
+							regulator-name = "VIO";
+							regulator-always-on;
+							label = "VIO";
+						};
+
+						temp-mcc {
+							/* MCC internal operating temperature */
+							compatible = "arm,vexpress-temp";
+							arm,vexpress-sysreg,func = <4 0>;
+							label = "MCC";
+						};
+
+						reset {
+							compatible = "arm,vexpress-reset";
+							arm,vexpress-sysreg,func = <5 0>;
+						};
+
+						muxfpga {
+							compatible = "arm,vexpress-muxfpga";
+							arm,vexpress-sysreg,func = <7 0>;
+						};
+
+						shutdown {
+							compatible = "arm,vexpress-shutdown";
+							arm,vexpress-sysreg,func = <8 0>;
+						};
+
+						reboot {
+							compatible = "arm,vexpress-reboot";
+							arm,vexpress-sysreg,func = <9 0>;
+						};
+
+						dvimode {
+							compatible = "arm,vexpress-dvimode";
+							arm,vexpress-sysreg,func = <11 0>;
+						};
+					};
 				};
 
 				v2m_sysctl: sysctl@1000 {
@@ -431,79 +504,6 @@ led-user8 {
 					linux,default-trigger = "cpu5";
 				};
 			};
-
-			mcc {
-				compatible = "arm,vexpress,config-bus";
-				arm,vexpress,config-bridge = <&v2m_sysreg>;
-
-				clock-controller-0 {
-					/* MCC static memory clock */
-					compatible = "arm,vexpress-osc";
-					arm,vexpress-sysreg,func = <1 0>;
-					freq-range = <25000000 60000000>;
-					#clock-cells = <0>;
-					clock-output-names = "v2m:oscclk0";
-				};
-
-				v2m_oscclk1: clock-controller-1 {
-					/* CLCD clock */
-					compatible = "arm,vexpress-osc";
-					arm,vexpress-sysreg,func = <1 1>;
-					freq-range = <23750000 65000000>;
-					#clock-cells = <0>;
-					clock-output-names = "v2m:oscclk1";
-				};
-
-				v2m_oscclk2: clock-controller-2 {
-					/* IO FPGA peripheral clock */
-					compatible = "arm,vexpress-osc";
-					arm,vexpress-sysreg,func = <1 2>;
-					freq-range = <24000000 24000000>;
-					#clock-cells = <0>;
-					clock-output-names = "v2m:oscclk2";
-				};
-
-				regulator-vio {
-					/* Logic level voltage */
-					compatible = "arm,vexpress-volt";
-					arm,vexpress-sysreg,func = <2 0>;
-					regulator-name = "VIO";
-					regulator-always-on;
-					label = "VIO";
-				};
-
-				temp-mcc {
-					/* MCC internal operating temperature */
-					compatible = "arm,vexpress-temp";
-					arm,vexpress-sysreg,func = <4 0>;
-					label = "MCC";
-				};
-
-				reset {
-					compatible = "arm,vexpress-reset";
-					arm,vexpress-sysreg,func = <5 0>;
-				};
-
-				muxfpga {
-					compatible = "arm,vexpress-muxfpga";
-					arm,vexpress-sysreg,func = <7 0>;
-				};
-
-				shutdown {
-					compatible = "arm,vexpress-shutdown";
-					arm,vexpress-sysreg,func = <8 0>;
-				};
-
-				reboot {
-					compatible = "arm,vexpress-reboot";
-					arm,vexpress-sysreg,func = <9 0>;
-				};
-
-				dvimode {
-					compatible = "arm,vexpress-dvimode";
-					arm,vexpress-sysreg,func = <11 0>;
-				};
-			};
 		};
 	};
 };

-- 
2.53.0


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

* [PATCH 3/7] ARM: dts: arm/vexpress-v2m: Move regulator and led nodes out of bus
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 1/7] dt-bindings: arm: vexpress-sysreg: Add "mcc" child node Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 2/7] ARM: dts: arm/vexpress: Move "arm,vexpress,config-bus" node into sysreg node Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 4/7] ARM: dts: arm: Use standard node names Rob Herring (Arm)
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

The regulator and led nodes are not MMIO devices, so they don't belong
in a "simple-bus" node. Move them to the root level. This mirrors the
change already done in vexpress-v2m-rs1.dtsi.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/vexpress-v2m.dtsi | 162 ++++++++++++++++----------------
 1 file changed, 81 insertions(+), 81 deletions(-)

diff --git a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
index 2a8d1d6dfc7e..e368f04bf513 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
+++ b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
@@ -20,6 +20,87 @@
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 
 / {
+	v2m_fixed_3v3: regulator-3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "3V3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		regulator-always-on;
+	};
+
+	v2m_clk24mhz: clock-24000000 {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <24000000>;
+		clock-output-names = "v2m:clk24mhz";
+	};
+
+	v2m_refclk1mhz: clock-1000000 {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <1000000>;
+		clock-output-names = "v2m:refclk1mhz";
+	};
+
+	v2m_refclk32khz: clock-32768 {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <32768>;
+		clock-output-names = "v2m:refclk32khz";
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		led-1 {
+			label = "v2m:green:user1";
+			gpios = <&v2m_led_gpios 0 0>;
+			linux,default-trigger = "heartbeat";
+		};
+
+		led-2 {
+			label = "v2m:green:user2";
+			gpios = <&v2m_led_gpios 1 0>;
+			linux,default-trigger = "disk-activity";
+		};
+
+		led-3 {
+			label = "v2m:green:user3";
+			gpios = <&v2m_led_gpios 2 0>;
+			linux,default-trigger = "cpu0";
+		};
+
+		led-4 {
+			label = "v2m:green:user4";
+			gpios = <&v2m_led_gpios 3 0>;
+			linux,default-trigger = "cpu1";
+		};
+
+		led-5 {
+			label = "v2m:green:user5";
+			gpios = <&v2m_led_gpios 4 0>;
+			linux,default-trigger = "cpu2";
+		};
+
+		led-6 {
+			label = "v2m:green:user6";
+			gpios = <&v2m_led_gpios 5 0>;
+			linux,default-trigger = "cpu3";
+		};
+
+		led-7 {
+			label = "v2m:green:user7";
+			gpios = <&v2m_led_gpios 6 0>;
+			linux,default-trigger = "cpu4";
+		};
+
+		led-8 {
+			label = "v2m:green:user8";
+			gpios = <&v2m_led_gpios 7 0>;
+			linux,default-trigger = "cpu5";
+		};
+	};
+
 	bus@40000000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
@@ -423,87 +504,6 @@ clcd_pads_mb: endpoint {
 					};
 				};
 			};
-
-			v2m_fixed_3v3: regulator-3v3 {
-				compatible = "regulator-fixed";
-				regulator-name = "3V3";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-always-on;
-			};
-
-			v2m_clk24mhz: clock-24000000 {
-				compatible = "fixed-clock";
-				#clock-cells = <0>;
-				clock-frequency = <24000000>;
-				clock-output-names = "v2m:clk24mhz";
-			};
-
-			v2m_refclk1mhz: clock-1000000 {
-				compatible = "fixed-clock";
-				#clock-cells = <0>;
-				clock-frequency = <1000000>;
-				clock-output-names = "v2m:refclk1mhz";
-			};
-
-			v2m_refclk32khz: clock-32768 {
-				compatible = "fixed-clock";
-				#clock-cells = <0>;
-				clock-frequency = <32768>;
-				clock-output-names = "v2m:refclk32khz";
-			};
-
-			leds {
-				compatible = "gpio-leds";
-
-				led-user1 {
-					label = "v2m:green:user1";
-					gpios = <&v2m_led_gpios 0 0>;
-					linux,default-trigger = "heartbeat";
-				};
-
-				led-user2 {
-					label = "v2m:green:user2";
-					gpios = <&v2m_led_gpios 1 0>;
-					linux,default-trigger = "mmc0";
-				};
-
-				led-user3 {
-					label = "v2m:green:user3";
-					gpios = <&v2m_led_gpios 2 0>;
-					linux,default-trigger = "cpu0";
-				};
-
-				led-user4 {
-					label = "v2m:green:user4";
-					gpios = <&v2m_led_gpios 3 0>;
-					linux,default-trigger = "cpu1";
-				};
-
-				led-user5 {
-					label = "v2m:green:user5";
-					gpios = <&v2m_led_gpios 4 0>;
-					linux,default-trigger = "cpu2";
-				};
-
-				led-user6 {
-					label = "v2m:green:user6";
-					gpios = <&v2m_led_gpios 5 0>;
-					linux,default-trigger = "cpu3";
-				};
-
-				led-user7 {
-					label = "v2m:green:user7";
-					gpios = <&v2m_led_gpios 6 0>;
-					linux,default-trigger = "cpu4";
-				};
-
-				led-user8 {
-					label = "v2m:green:user8";
-					gpios = <&v2m_led_gpios 7 0>;
-					linux,default-trigger = "cpu5";
-				};
-			};
 		};
 	};
 };

-- 
2.53.0


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

* [PATCH 4/7] ARM: dts: arm: Use standard node names
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
                   ` (2 preceding siblings ...)
  2026-11-05 22:34 ` [PATCH 3/7] ARM: dts: arm/vexpress-v2m: Move regulator and led nodes out of bus Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 5/7] ARM: dts: arm: Add missing "#dma-cells" Rob Herring (Arm)
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

Update various node names in Arm Ltd. boards to use the standard names
and unit-address format as defined in DT schemas.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi   |  2 +-
 arch/arm/boot/dts/arm/arm-realview-eb.dtsi      |  8 ++++----
 arch/arm/boot/dts/arm/arm-realview-pb1176.dts   |  8 ++++----
 arch/arm/boot/dts/arm/arm-realview-pb11mp.dts   |  6 +++---
 arch/arm/boot/dts/arm/arm-realview-pbx.dtsi     | 10 +++++-----
 arch/arm/boot/dts/arm/integrator.dtsi           |  2 +-
 arch/arm/boot/dts/arm/integratorap-im-pd1.dts   |  2 +-
 arch/arm/boot/dts/arm/integratorap.dts          |  2 +-
 arch/arm/boot/dts/arm/integratorcp.dts          |  4 ++--
 arch/arm/boot/dts/arm/mps2-an385.dts            |  2 +-
 arch/arm/boot/dts/arm/mps2-an399.dts            |  2 +-
 arch/arm/boot/dts/arm/mps2.dtsi                 |  4 ++--
 arch/arm/boot/dts/arm/versatile-ab.dts          | 10 +++++-----
 arch/arm/boot/dts/arm/versatile-pb.dts          |  4 ++--
 arch/arm/boot/dts/arm/vexpress-v2m.dtsi         | 14 +++++++-------
 arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts |  6 +++---
 arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts  |  6 +++---
 arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts     |  2 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts      |  2 +-
 19 files changed, 48 insertions(+), 48 deletions(-)

diff --git a/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi b/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
index 40f7515aa068..55287a2a0654 100644
--- a/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
+++ b/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
@@ -59,7 +59,7 @@ intc_second: interrupt-controller@10040000 {
 			interrupts = <0 10 IRQ_TYPE_LEVEL_HIGH>;
 		};
 
-		L2: cache-controller {
+		L2: cache-controller@1f002000 {
 			compatible = "arm,l220-cache";
 			reg = <0x1f002000 0x1000>;
 			interrupt-parent = <&intc>;
diff --git a/arch/arm/boot/dts/arm/arm-realview-eb.dtsi b/arch/arm/boot/dts/arm/arm-realview-eb.dtsi
index f90e28ee4cb9..9de672dbdf3a 100644
--- a/arch/arm/boot/dts/arm/arm-realview-eb.dtsi
+++ b/arch/arm/boot/dts/arm/arm-realview-eb.dtsi
@@ -74,7 +74,7 @@ pclk: clock-pclk {
 		clock-frequency = <0>;
 	};
 
-	flash0@40000000 {
+	flash@40000000 {
 		/* 2 * 32MiB NOR Flash memory */
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x40000000 0x04000000>;
@@ -84,7 +84,7 @@ partitions {
 		};
 	};
 
-	flash1@44000000 {
+	flash@44000000 {
 		/* 2 * 32MiB NOR Flash memory */
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x44000000 0x04000000>;
@@ -149,7 +149,7 @@ vga_con_in: endpoint {
 	};
 
 	/* These peripherals are inside the FPGA */
-	fpga {
+	fpga-bus {
 		#address-cells = <1>;
 		#size-cells = <1>;
 		compatible = "simple-bus";
@@ -290,7 +290,7 @@ aaci: aaci@10004000 {
 			clock-names = "apb_pclk";
 		};
 
-		mmc: mmcsd@10005000 {
+		mmc: mmc@10005000 {
 			compatible = "arm,pl18x", "arm,primecell";
 			reg = <0x10005000 0x1000>;
 
diff --git a/arch/arm/boot/dts/arm/arm-realview-pb1176.dts b/arch/arm/boot/dts/arm/arm-realview-pb1176.dts
index 1cd095496832..c81b0ec5ffeb 100644
--- a/arch/arm/boot/dts/arm/arm-realview-pb1176.dts
+++ b/arch/arm/boot/dts/arm/arm-realview-pb1176.dts
@@ -93,7 +93,7 @@ partitions {
 		};
 	};
 
-	fpga_flash@38000000 {
+	flash@38000000 {
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x38000000 0x800000>;
 		bank-width = <4>;
@@ -108,7 +108,7 @@ partitions {
 	 * screw this up. Mark the device tree node disabled
 	 * by default.
 	 */
-	secflash@3c000000 {
+	flash@3c000000 {
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x3c000000 0x4000000>;
 		bank-width = <4>;
@@ -445,7 +445,7 @@ clcd_pads: endpoint {
 	};
 
 	/* These peripherals are inside the FPGA rather than the DevChip */
-	fpga {
+	fpga-bus {
 		#address-cells = <1>;
 		#size-cells = <1>;
 		compatible = "simple-bus";
@@ -472,7 +472,7 @@ fpga_aaci: aaci@10004000 {
 			clock-names = "apb_pclk";
 		};
 
-		fpga_mci: mmcsd@10005000 {
+		fpga_mci: mmc@10005000 {
 			compatible = "arm,pl18x", "arm,primecell";
 			reg = <0x10005000 0x1000>;
 			interrupt-parent = <&intc_fpga1176>;
diff --git a/arch/arm/boot/dts/arm/arm-realview-pb11mp.dts b/arch/arm/boot/dts/arm/arm-realview-pb11mp.dts
index 635b09030f60..d5a6a1cacd1e 100644
--- a/arch/arm/boot/dts/arm/arm-realview-pb11mp.dts
+++ b/arch/arm/boot/dts/arm/arm-realview-pb11mp.dts
@@ -190,7 +190,7 @@ pclk: clock-pclk {
 		clock-frequency = <0>;
 	};
 
-	flash0@40000000 {
+	flash@40000000 {
 		/* 2 * 32MiB NOR Flash memory */
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x40000000 0x04000000>;
@@ -200,7 +200,7 @@ partitions {
 		};
 	};
 
-	flash1@44000000 {
+	flash@44000000 {
 		// 2 * 32MiB NOR Flash memory
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x44000000 0x04000000>;
@@ -437,7 +437,7 @@ aaci: aaci@10004000 {
 			clock-names = "apb_pclk";
 		};
 
-		mci: mmcsd@10005000 {
+		mci: mmc@10005000 {
 			compatible = "arm,pl18x", "arm,primecell";
 			reg = <0x10005000 0x1000>;
 			interrupt-parent = <&intc_tc11mp>;
diff --git a/arch/arm/boot/dts/arm/arm-realview-pbx.dtsi b/arch/arm/boot/dts/arm/arm-realview-pbx.dtsi
index 366c8baefe8c..fb2bc78969fe 100644
--- a/arch/arm/boot/dts/arm/arm-realview-pbx.dtsi
+++ b/arch/arm/boot/dts/arm/arm-realview-pbx.dtsi
@@ -89,7 +89,7 @@ pclk: clock-pclk {
 		clock-frequency = <0>;
 	};
 
-	flash0@40000000 {
+	flash@40000000 {
 		/* 2 * 32MiB NOR Flash memory */
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x40000000 0x04000000>;
@@ -99,7 +99,7 @@ partitions {
 		};
 	};
 
-	flash1@44000000 {
+	flash@44000000 {
 		/* 2 * 32MiB NOR Flash memory */
 		compatible = "arm,versatile-flash", "cfi-flash";
 		reg = <0x44000000 0x04000000>;
@@ -475,7 +475,7 @@ sp810_syscon1: sysctl@1001a000 {
 
 
 	/* These peripherals are inside the FPGA */
-	fpga {
+	fpga-bus {
 		#address-cells = <1>;
 		#size-cells = <1>;
 		compatible = "simple-bus";
@@ -488,7 +488,7 @@ aaci: aaci@10004000 {
 			clock-names = "apb_pclk";
 		};
 
-		mmc: mmcsd@10005000 {
+		mmc: mmc@10005000 {
 			compatible = "arm,pl18x", "arm,primecell";
 			reg = <0x10005000 0x1000>;
 
@@ -527,7 +527,7 @@ serial3: serial@1000c000 {
 	};
 
 	/* These peripherals are inside the NEC ISSP */
-	issp {
+	issp-bus {
 		#address-cells = <1>;
 		#size-cells = <1>;
 		compatible = "simple-bus";
diff --git a/arch/arm/boot/dts/arm/integrator.dtsi b/arch/arm/boot/dts/arm/integrator.dtsi
index 7f1c8ee9dd8a..6c48c974a89f 100644
--- a/arch/arm/boot/dts/arm/integrator.dtsi
+++ b/arch/arm/boot/dts/arm/integrator.dtsi
@@ -71,7 +71,7 @@ partitions {
 		};
 	};
 
-	fpga {
+	fpga-bus {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/integratorap-im-pd1.dts b/arch/arm/boot/dts/arm/integratorap-im-pd1.dts
index db13e09f2fab..5ccc352650b4 100644
--- a/arch/arm/boot/dts/arm/integratorap-im-pd1.dts
+++ b/arch/arm/boot/dts/arm/integratorap-im-pd1.dts
@@ -250,7 +250,7 @@ display@1000000 {
 		memory-region = <&impd1_ram>;
 		dma-ranges;
 
-		port@0 {
+		port {
 			#address-cells = <1>;
 			#size-cells = <0>;
 
diff --git a/arch/arm/boot/dts/arm/integratorap.dts b/arch/arm/boot/dts/arm/integratorap.dts
index 9b6a1dbaf265..639809e1466c 100644
--- a/arch/arm/boot/dts/arm/integratorap.dts
+++ b/arch/arm/boot/dts/arm/integratorap.dts
@@ -197,7 +197,7 @@ pci: pci@62000000 {
 		>;
 	};
 
-	fpga {
+	fpga-bus {
 		/*
 		 * The Integator/AP predates the idea to have magic numbers
 		 * identifying the PrimeCell in hardware, thus we have to
diff --git a/arch/arm/boot/dts/arm/integratorcp.dts b/arch/arm/boot/dts/arm/integratorcp.dts
index 8ad1a8957ace..7f02f77c739d 100644
--- a/arch/arm/boot/dts/arm/integratorcp.dts
+++ b/arch/arm/boot/dts/arm/integratorcp.dts
@@ -232,7 +232,7 @@ vga_con_in: endpoint {
 		};
 	};
 
-	fpga {
+	fpga-bus {
 		/*
 		 * These PrimeCells are at the same location and using
 		 * the same interrupts in all Integrators, but in the CP
@@ -311,7 +311,7 @@ clcd@c0000000 {
 			 * This arrangement can be clearly seen in
 			 * ARM DUI 0225D, page 3-41, figure 3-19.
 			 */
-			port@0 {
+			port {
 				clcd_pads_vga_dac: endpoint {
 					remote-endpoint = <&vga_bridge_in>;
 					arm,pl11x,tft-r0g0b0-pads = <0 8 16>;
diff --git a/arch/arm/boot/dts/arm/mps2-an385.dts b/arch/arm/boot/dts/arm/mps2-an385.dts
index aebbebfc25d1..412e1ae1d0fb 100644
--- a/arch/arm/boot/dts/arm/mps2-an385.dts
+++ b/arch/arm/boot/dts/arm/mps2-an385.dts
@@ -64,7 +64,7 @@ memory@21000000 {
 		reg = <0x21000000 0x1000000>;
 	};
 
-	smb {
+	smb-bus {
 		ethernet@0,0 {
 			compatible = "smsc,lan9220", "smsc,lan9115";
 			reg = <0 0x0 0x10000>;
diff --git a/arch/arm/boot/dts/arm/mps2-an399.dts b/arch/arm/boot/dts/arm/mps2-an399.dts
index 349abf70b2a5..522e998ac10f 100644
--- a/arch/arm/boot/dts/arm/mps2-an399.dts
+++ b/arch/arm/boot/dts/arm/mps2-an399.dts
@@ -64,7 +64,7 @@ memory@60000000 {
 		reg = <0x60000000 0x1000000>;
 	};
 
-	smb {
+	smb-bus {
 		ethernet@1,0 {
 			compatible = "smsc,lan9220", "smsc,lan9115";
 			reg = <1 0x0 0x10000>;
diff --git a/arch/arm/boot/dts/arm/mps2.dtsi b/arch/arm/boot/dts/arm/mps2.dtsi
index e240bc8aa605..bed54da4ab5c 100644
--- a/arch/arm/boot/dts/arm/mps2.dtsi
+++ b/arch/arm/boot/dts/arm/mps2.dtsi
@@ -174,7 +174,7 @@ wdt: watchdog@8000 {
 		};
 	};
 
-	fpga@40020000 {
+	fpga-bus@40020000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
@@ -210,7 +210,7 @@ led@0,1 {
 		};
 	};
 
-	smb {
+	smb-bus {
 		compatible = "simple-bus";
 		#address-cells = <2>;
 		#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/versatile-ab.dts b/arch/arm/boot/dts/arm/versatile-ab.dts
index 635ab9268899..907c3dd2849d 100644
--- a/arch/arm/boot/dts/arm/versatile-ab.dts
+++ b/arch/arm/boot/dts/arm/versatile-ab.dts
@@ -188,7 +188,7 @@ rtc@68 {
 		};
 	};
 
-	net@10010000 {
+	ethernet@10010000 {
 		compatible = "smsc,lan91c111";
 		reg = <0x10010000 0x10000>;
 		interrupts = <25>;
@@ -199,7 +199,7 @@ lcd@10008000 {
 		reg = <0x10008000 0x1000>;
 	};
 
-	amba {
+	amba-bus {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
@@ -228,7 +228,7 @@ sic: interrupt-controller@10003000 {
 			valid-mask = <0x0760031b>;
 		};
 
-		dma@10130000 {
+		dma-controller@10130000 {
 			compatible = "arm,pl081", "arm,primecell";
 			reg = <0x10130000 0x1000>;
 			interrupts = <17>;
@@ -297,7 +297,7 @@ display@10120000 {
 			 * This arrangement can be clearly seen in
 			 * ARM DUI 0225D, page 3-41, figure 3-19.
 			 */
-			port@0 {
+			port {
 				#address-cells = <1>;
 				#size-cells = <0>;
 
@@ -393,7 +393,7 @@ spi@101f4000 {
 			clock-names = "sspclk", "apb_pclk";
 		};
 
-		fpga {
+		fpga-bus@10000000 {
 			compatible = "arm,versatile-fpga", "simple-bus";
 			#address-cells = <1>;
 			#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/versatile-pb.dts b/arch/arm/boot/dts/arm/versatile-pb.dts
index fc21ce54b33a..523d1dd37c2a 100644
--- a/arch/arm/boot/dts/arm/versatile-pb.dts
+++ b/arch/arm/boot/dts/arm/versatile-pb.dts
@@ -5,7 +5,7 @@ / {
 	model = "ARM Versatile PB";
 	compatible = "arm,versatile-pb";
 
-	amba {
+	amba-bus {
 		/* The Versatile PB is using more SIC IRQ lines than the AB */
 		sic: interrupt-controller@10003000 {
 			clear-mask = <0xffffffff>;
@@ -77,7 +77,7 @@ pci@10001000 {
 					 0x0000 0 0 4 &sic 28>;
 		};
 
-		fpga {
+		fpga-bus@10000000 {
 			mmc@5000 {
 				/*
 				 * Overrides the interrupt assignment from
diff --git a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
index e368f04bf513..202ea7bd5dc5 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
+++ b/arch/arm/boot/dts/arm/vexpress-v2m.dtsi
@@ -166,7 +166,7 @@ motherboard-bus@40000000 {
 				 <3 0 0x4c000000 0x04000000>,
 				 <7 0 0x10000000 0x00020000>;
 
-			flash@0,00000000 {
+			flash@0,0 {
 				compatible = "arm,vexpress-flash", "cfi-flash";
 				reg = <0 0x00000000 0x04000000>,
 				      <1 0x00000000 0x04000000>;
@@ -176,13 +176,13 @@ partitions {
 				};
 			};
 
-			psram@2,00000000 {
+			psram@2,0 {
 				compatible = "arm,vexpress-psram", "mtd-ram";
 				reg = <2 0x00000000 0x02000000>;
 				bank-width = <4>;
 			};
 
-			ethernet@3,02000000 {
+			ethernet@3,2000000 {
 				compatible = "smsc,lan9118", "smsc,lan9115";
 				reg = <3 0x02000000 0x10000>;
 				interrupts = <15>;
@@ -194,14 +194,14 @@ ethernet@3,02000000 {
 				vddvario-supply = <&v2m_fixed_3v3>;
 			};
 
-			usb@3,03000000 {
+			usb@3,3000000 {
 				compatible = "nxp,usb-isp1761";
 				reg = <3 0x03000000 0x20000>;
 				interrupts = <16>;
 				dr_mode = "peripheral";
 			};
 
-			iofpga@7,00000000 {
+			iofpga-bus@7,0 {
 				compatible = "simple-bus";
 				#address-cells = <1>;
 				#size-cells = <1>;
@@ -342,7 +342,7 @@ aaci@4000 {
 					clock-names = "apb_pclk";
 				};
 
-				mmci@5000 {
+				mmc@5000 {
 					compatible = "arm,pl180", "arm,primecell";
 					reg = <0x05000 0x1000>;
 					interrupts = <9>, <10>;
@@ -402,7 +402,7 @@ v2m_serial3: serial@c000 {
 					clock-names = "uartclk", "apb_pclk";
 				};
 
-				wdt@f000 {
+				watchdog@f000 {
 					compatible = "arm,sp805", "arm,primecell";
 					reg = <0x0f000 0x1000>;
 					interrupts = <0>;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
index 5a91e936edef..72a65a83c7c3 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
@@ -82,7 +82,7 @@ memory-controller@2b0a0000 {
 		clock-names = "apb_pclk";
 	};
 
-	wdt@2b060000 {
+	watchdog@2b060000 {
 		compatible = "arm,sp805", "arm,primecell";
 		status = "disabled";
 		reg = <0 0x2b060000 0 0x1000>;
@@ -112,7 +112,7 @@ memory-controller@7ffd0000 {
 		clock-names = "apb_pclk";
 	};
 
-	dma@7ffb0000 {
+	dma-controller@7ffb0000 {
 		compatible = "arm,pl330", "arm,primecell";
 		reg = <0 0x7ffb0000 0 0x1000>;
 		interrupts = <0 92 4>,
@@ -240,7 +240,7 @@ bus@8000000 {
 		ranges = <0x8000000 0 0x8000000 0x18000000>;
 	};
 
-	site2: hsb@40000000 {
+	site2: hsb-bus@40000000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
index 64f87e6c12bf..7b74ba30b8a3 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
@@ -123,7 +123,7 @@ vram: vram@18000000 {
 		};
 	};
 
-	wdt@2a490000 {
+	watchdog@2a490000 {
 		compatible = "arm,sp805", "arm,primecell";
 		reg = <0 0x2a490000 0 0x1000>;
 		interrupts = <0 98 4>;
@@ -197,7 +197,7 @@ memory-controller@7ffd0000 {
 		clock-names = "apb_pclk";
 	};
 
-	dma@7ff00000 {
+	dma-controller@7ff00000 {
 		compatible = "arm,pl330", "arm,primecell";
 		reg = <0 0x7ff00000 0 0x1000>;
 		interrupts = <0 92 4>,
@@ -612,7 +612,7 @@ smb: bus@8000000 {
 		ranges = <0x8000000 0 0x8000000 0x18000000>;
 	};
 
-	site2: hsb@40000000 {
+	site2: hsb-bus@40000000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
index 41a98ba33e80..c716e60a8be0 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
@@ -211,7 +211,7 @@ smb: bus@8000000 {
 		ranges = <0 0x8000000 0x18000000>;
 	};
 
-	site2: hsb@40000000 {
+	site2: hsb-bus@40000000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts
index 43a5a4ab6ff0..7beb069abf49 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca9.dts
@@ -297,7 +297,7 @@ power-vd10-s3 {
 		};
 	};
 
-	site2: hsb@e0000000 {
+	site2: hsb-bus@e0000000 {
 		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;

-- 
2.53.0


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

* [PATCH 5/7] ARM: dts: arm: Add missing "#dma-cells"
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
                   ` (3 preceding siblings ...)
  2026-11-05 22:34 ` [PATCH 4/7] ARM: dts: arm: Use standard node names Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles Rob Herring (Arm)
  2026-11-05 22:34 ` [PATCH 7/7] ARM: dts: arm-realview-eb-mp: Move "pmu" node to top-level Rob Herring (Arm)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

"#dma-cells" is a required property for DMA controllers. Add it where
missing.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/versatile-ab.dts          | 1 +
 arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts | 1 +
 arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts  | 1 +
 3 files changed, 3 insertions(+)

diff --git a/arch/arm/boot/dts/arm/versatile-ab.dts b/arch/arm/boot/dts/arm/versatile-ab.dts
index 907c3dd2849d..f1c927e8a8fc 100644
--- a/arch/arm/boot/dts/arm/versatile-ab.dts
+++ b/arch/arm/boot/dts/arm/versatile-ab.dts
@@ -234,6 +234,7 @@ dma-controller@10130000 {
 			interrupts = <17>;
 			clocks = <&pclk>;
 			clock-names = "apb_pclk";
+			#dma-cells = <2>;
 		};
 
 		uart0: serial@101f1000 {
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
index 72a65a83c7c3..dd68250fa999 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
@@ -122,6 +122,7 @@ dma-controller@7ffb0000 {
 			     <0 91 4>;
 		clocks = <&sys_pll>;
 		clock-names = "apb_pclk";
+		#dma-cells = <1>;
 	};
 
 	timer {
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
index 7b74ba30b8a3..8f210671b287 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
@@ -207,6 +207,7 @@ dma-controller@7ff00000 {
 			     <0 91 4>;
 		clocks = <&oscclk6a>;
 		clock-names = "apb_pclk";
+		#dma-cells = <1>;
 	};
 
 	scc@7fff0000 {

-- 
2.53.0


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

* [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
                   ` (4 preceding siblings ...)
  2026-11-05 22:34 ` [PATCH 5/7] ARM: dts: arm: Add missing "#dma-cells" Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  2026-11-05 22:39   ` sashiko-bot
  2026-11-05 22:34 ` [PATCH 7/7] ARM: dts: arm-realview-eb-mp: Move "pmu" node to top-level Rob Herring (Arm)
  6 siblings, 1 reply; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

The "arm,cortex-a15-gic" compatible does not take a "arm,cortex-a9-gic"
fallback compatible, so drop it.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts | 2 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts  | 2 +-
 arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
index dd68250fa999..75d7f2852f94 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15-tc1.dts
@@ -92,7 +92,7 @@ watchdog@2b060000 {
 	};
 
 	gic: interrupt-controller@2c001000 {
-		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+		compatible = "arm,cortex-a15-gic";
 		#interrupt-cells = <3>;
 		#address-cells = <0>;
 		interrupt-controller;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
index 8f210671b287..f3f9d6e4dd16 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca15_a7.dts
@@ -147,7 +147,7 @@ memory-controller@2b0a0000 {
 	};
 
 	gic: interrupt-controller@2c001000 {
-		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+		compatible = "arm,cortex-a15-gic";
 		#interrupt-cells = <3>;
 		#address-cells = <0>;
 		interrupt-controller;
diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
index c716e60a8be0..a5e0dde254ab 100644
--- a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
+++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
@@ -119,7 +119,7 @@ watchdog@2c000620 {
 	};
 
 	gic: interrupt-controller@2c001000 {
-		compatible = "arm,cortex-a5-gic", "arm,cortex-a9-gic";
+		compatible = "arm,cortex-a5-gic";
 		#interrupt-cells = <3>;
 		#address-cells = <0>;
 		interrupt-controller;

-- 
2.53.0


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

* [PATCH 7/7] ARM: dts: arm-realview-eb-mp: Move "pmu" node to top-level
  2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
                   ` (5 preceding siblings ...)
  2026-11-05 22:34 ` [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles Rob Herring (Arm)
@ 2026-11-05 22:34 ` Rob Herring (Arm)
  6 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-11-05 22:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Conor Dooley, Liviu Dudau, Sudeep Holla,
	Lorenzo Pieralisi, Andre Przywara, Linus Walleij
  Cc: devicetree, linux-arm-kernel, linux-kernel

The PMU node is not an MMIO device and doesn't belong in "simple-bus" node.
Move it to the top-level which is the normal location.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi b/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
index 55287a2a0654..1805c00a90e6 100644
--- a/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
+++ b/arch/arm/boot/dts/arm/arm-realview-eb-mp.dtsi
@@ -101,16 +101,16 @@ twd_wdog: watchdog@1f000620 {
 			interrupt-parent = <&intc>;
 			interrupts = <1 14 0xf04>;
 		};
+	};
 
-		/* PMU with one IRQ line per core */
-		pmu: pmu {
-			compatible = "arm,arm11mpcore-pmu";
-			interrupt-parent = <&intc>;
-			interrupts = <0 17 IRQ_TYPE_LEVEL_HIGH>,
-			     <0 18 IRQ_TYPE_LEVEL_HIGH>,
-			     <0 19 IRQ_TYPE_LEVEL_HIGH>,
-			     <0 20 IRQ_TYPE_LEVEL_HIGH>;
-		};
+	/* PMU with one IRQ line per core */
+	pmu: pmu {
+		compatible = "arm,arm11mpcore-pmu";
+		interrupt-parent = <&intc>;
+		interrupts = <0 17 IRQ_TYPE_LEVEL_HIGH>,
+		     <0 18 IRQ_TYPE_LEVEL_HIGH>,
+		     <0 19 IRQ_TYPE_LEVEL_HIGH>,
+		     <0 20 IRQ_TYPE_LEVEL_HIGH>;
 	};
 };
 

-- 
2.53.0


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

* Re: [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles
  2026-11-05 22:34 ` [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles Rob Herring (Arm)
@ 2026-11-05 22:39   ` sashiko-bot
  0 siblings, 0 replies; 9+ messages in thread
From: sashiko-bot @ 2026-11-05 22:39 UTC (permalink / raw)
  To: Rob Herring (Arm); +Cc: devicetree, conor+dt

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] ARM: dts: vexpress: dropping arm,cortex-a9-gic breaks GIC init on v2p-ca5s
--

commit 35f1a8a2621e891a6464121f2faf6970b2efbbab
Author: Rob Herring (Arm) <robh@kernel.org>

ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles

This commit drops the "arm,cortex-a9-gic" fallback compatible from the GIC
interrupt-controller nodes in three Versatile Express device trees.

> diff --git a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
> index c716e60a8be0b..a5e0dde254ab3 100644
> --- a/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
> +++ b/arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts
> @@ -119,7 +119,7 @@ watchdog@2c000620 {
>  	};
>  
>  	gic: interrupt-controller@2c001000 {
> -		compatible = "arm,cortex-a5-gic", "arm,cortex-a9-gic";
> +		compatible = "arm,cortex-a5-gic";

[Severity: High]
Does dropping "arm,cortex-a9-gic" from gic: interrupt-controller@2c001000 in
arch/arm/boot/dts/arm/vexpress-v2p-ca5s.dts break GIC initialization when
booting V2P-CA5s?

In arch/arm/mach-versatile/v2m.c, DT_MACHINE_START(VEXPRESS_DT) relies on
init_IRQ() -> irqchip_init() -> of_irq_init(__irqchip_of_table) to match the
root interrupt controller. However, drivers/irqchip/irq-gic.c does not declare
a match for "arm,cortex-a5-gic":

drivers/irqchip/irq-gic.c:
    IRQCHIP_DECLARE(gic_400, "arm,gic-400", gic_of_init);
    IRQCHIP_DECLARE(arm11mp_gic, "arm,arm11mp-gic", gic_of_init);
    IRQCHIP_DECLARE(arm1176jzf_dc_gic, "arm,arm1176jzf-devchip-gic", gic_of_init);
    IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init);
    IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init);
    IRQCHIP_DECLARE(cortex_a7_gic, "arm,cortex-a7-gic", gic_of_init);
    IRQCHIP_DECLARE(msm_8660_qgic, "qcom,msm-8660-qgic", gic_of_init);
    IRQCHIP_DECLARE(msm_qgic2, "qcom,msm-qgic2", gic_of_init);
    IRQCHIP_DECLARE(pl390, "arm,pl390", gic_of_init);

Without the "arm,cortex-a9-gic" fallback or an IRQCHIP_DECLARE entry for
"arm,cortex-a5-gic" in drivers/irqchip/irq-gic.c, of_irq_init() will not find
a matching driver for the primary interrupt controller on V2P-CA5s.

Also, the commit subject and message only mention Cortex-A15 and
"arm,cortex-a15-gic". Was the change to vexpress-v2p-ca5s.dts unintended?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261105-dt-vexpress-dts-fixes-v1-0-66615c3c8ec3@kernel.org?part=6

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

end of thread, other threads:[~2026-11-05 22:39 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-05 22:34 [PATCH 0/7] ARM: dts: arm: Another batch of warning fixes Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 1/7] dt-bindings: arm: vexpress-sysreg: Add "mcc" child node Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 2/7] ARM: dts: arm/vexpress: Move "arm,vexpress,config-bus" node into sysreg node Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 3/7] ARM: dts: arm/vexpress-v2m: Move regulator and led nodes out of bus Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 4/7] ARM: dts: arm: Use standard node names Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 5/7] ARM: dts: arm: Add missing "#dma-cells" Rob Herring (Arm)
2026-11-05 22:34 ` [PATCH 6/7] ARM: dts: arm/vexpress: Fix Cortex-A15 GIC compatibles Rob Herring (Arm)
2026-11-05 22:39   ` sashiko-bot
2026-11-05 22:34 ` [PATCH 7/7] ARM: dts: arm-realview-eb-mp: Move "pmu" node to top-level Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox