From d6edb159bc199b1b70a174b3d9314efbe3541258 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Mon, 15 Apr 2024 20:52:03 +0100
Subject: [PATCH 1025/1085] ARM: dts: Move virtgpio under the firmware node

In the 6.6 kernel, devices that use the raspberrypi firmware driver
should be children of the firmware node.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
 arch/arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts | 18 +++++++-----------
 arch/arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts | 18 +++++++-----------
 .../arm/boot/dts/broadcom/bcm2711-rpi-cm4s.dts | 17 +++++++++--------
 3 files changed, 23 insertions(+), 30 deletions(-)

--- a/arch/arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts
+++ b/arch/arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts
@@ -124,17 +124,6 @@ i2c_csi_dsi0: &i2c0 {
 	};
 };
 
-&soc {
-	virtgpio: virtgpio {
-		compatible = "brcm,bcm2835-virtgpio";
-		gpio-controller;
-		#gpio-cells = <2>;
-		firmware = <&firmware>;
-		status = "okay";
-	};
-
-};
-
 &firmware {
 	expgpio: expgpio {
 		compatible = "raspberrypi,firmware-gpio";
@@ -150,6 +139,13 @@ i2c_csi_dsi0: &i2c0 {
 				  "NC";
 		status = "okay";
 	};
+
+	virtgpio: virtgpio {
+		compatible = "brcm,bcm2835-virtgpio";
+		gpio-controller;
+		#gpio-cells = <2>;
+		status = "okay";
+	};
 };
 
 &spi0 {
--- a/arch/arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts
+++ b/arch/arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts
@@ -124,17 +124,6 @@ i2c_csi_dsi0: &i2c0 {
 	};
 };
 
-&soc {
-	virtgpio: virtgpio {
-		compatible = "brcm,bcm2835-virtgpio";
-		gpio-controller;
-		#gpio-cells = <2>;
-		firmware = <&firmware>;
-		status = "okay";
-	};
-
-};
-
 &firmware {
 	expgpio: expgpio {
 		compatible = "raspberrypi,firmware-gpio";
@@ -150,6 +139,13 @@ i2c_csi_dsi0: &i2c0 {
 				  "NC";
 		status = "okay";
 	};
+
+	virtgpio: virtgpio {
+		compatible = "brcm,bcm2835-virtgpio";
+		gpio-controller;
+		#gpio-cells = <2>;
+		status = "okay";
+	};
 };
 
 &spi0 {
--- a/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4s.dts
+++ b/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4s.dts
@@ -139,14 +139,6 @@
 	soc {
 		/delete-node/ pixelvalve@7e807000;
 		/delete-node/ hdmi@7e902000;
-
-		virtgpio: virtgpio {
-			compatible = "brcm,bcm2835-virtgpio";
-			gpio-controller;
-			#gpio-cells = <2>;
-			firmware = <&firmware>;
-			status = "okay";
-		};
 	};
 };
 
@@ -169,6 +161,15 @@
 	/delete-node/ wifi-pwrseq;
 };
 
+&firmware {
+		virtgpio: virtgpio {
+			compatible = "brcm,bcm2835-virtgpio";
+			gpio-controller;
+			#gpio-cells = <2>;
+			status = "okay";
+		};
+};
+
 &uart0 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart0_pins>;
