[PATCH 10/19] ARM: dts: update RN104 Linux DTS

Luca Lauro via B4 Relay devnull+famlauro93l.gmail.com at kernel.org
Thu Jul 23 06:57:48 PDT 2026


From: Luca Lauro <famlauro93l at gmail.com>

---
 dts/src/arm/marvell/armada-370-netgear-rn104.dts | 173 ++++++++++++++---------
 1 file changed, 104 insertions(+), 69 deletions(-)

diff --git a/dts/src/arm/marvell/armada-370-netgear-rn104.dts b/dts/src/arm/marvell/armada-370-netgear-rn104.dts
index d752ac1d7b..d7cc0549f4 100644
--- a/dts/src/arm/marvell/armada-370-netgear-rn104.dts
+++ b/dts/src/arm/marvell/armada-370-netgear-rn104.dts
@@ -15,6 +15,10 @@ / {
 	model = "NETGEAR ReadyNAS 104";
 	compatible = "netgear,readynas-104", "marvell,armada370", "marvell,armada-370-xp";
 
+	aliases {
+		state = &state_nand;
+    };
+
 	chosen {
 		stdout-path = "serial0:115200n8";
 	};
@@ -40,6 +44,12 @@ serial at 12000 {
 				status = "okay";
 			};
 
+			/* eSATA interface */
+			sata at a0000 {
+				nr-ports = <1>;
+				status = "okay";
+			};
+
 			ethernet at 70000 {
 				pinctrl-0 = <&ge0_rgmii_pins>;
 				pinctrl-names = "default";
@@ -103,15 +113,10 @@ g762_clk: g762-oscillator {
 
 	gpio-leds {
 		compatible = "gpio-leds";
-		pinctrl-0 = <&backup_led_pin &power_led_pin>;
+		pinctrl-0 = <&power_led_pin
+			     &backup_led_pin>;
 		pinctrl-names = "default";
 
-		blue-backup-led {
-			label = "rn104:blue:backup";
-			gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>;
-			default-state = "off";
-		};
-
 		blue-power-led {
 			label = "rn104:blue:pwr";
 			gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
@@ -141,6 +146,12 @@ blue-sata4-led {
 			gpios = <&pca9554 3 GPIO_ACTIVE_LOW>;
 			default-state = "off";
 		};
+
+		blue-backup-led {
+			label = "rn104:blue:backup";
+			gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>;
+			default-state = "off";
+		};
 	};
 
 	auxdisplay {
@@ -159,17 +170,11 @@ auxdisplay {
 
 	gpio-keys {
 		compatible = "gpio-keys";
-		pinctrl-0 = <&backup_button_pin
-			     &power_button_pin
-			     &reset_button_pin>;
+		pinctrl-0 = <&power_button_pin
+			     &reset_button_pin
+			     &backup_button_pin>;
 		pinctrl-names = "default";
 
-		backup-button {
-			label = "Backup Button";
-			linux,code = <KEY_COPY>;
-			gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
-		};
-
 		power-button {
 			label = "Power Button";
 			linux,code = <KEY_POWER>;
@@ -181,6 +186,12 @@ reset-button {
 			linux,code = <KEY_RESTART>;
 			gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
 		};
+
+		backup-button {
+			label = "Backup Button";
+			linux,code = <KEY_COPY>;
+			gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
+		};
 	};
 
 	gpio-poweroff {
@@ -189,18 +200,43 @@ gpio-poweroff {
 		pinctrl-names = "default";
 		gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
 	};
+
+	/* configure nand partition to store barebox environment */
+	environment {
+      compatible = "barebox,environment";
+      device-path = &nand_controller, "partname:environment";
+	};
+
+	/* configure nand partition to store barebox-state backend */
+	state_nand: nand_state_memory {
+        #address-cells = <1>;
+        #size-cells = <1>;
+        compatible = "barebox,state";
+        magic = <0xab67421f>;
+        backend-type = "raw";
+        backend = <&backend_state_nand>;
+        backend-storage-type = "circular";
+		backend-stridesize = <32>;
+
+        
+        variable at 0 {
+                reg = <0x0 0x1>;
+                type ="uint8";
+                default = <0x1>;
+        };
+	};
 };
 
 &pciec {
 	status = "okay";
 
-	/* Connected to FL1009 USB 3.0 controller */
+	/* Connected to Marvell 88SE9170 SATA controller */
 	pcie at 1,0 {
 		/* Port 0, Lane 0 */
 		status = "okay";
 	};
 
-	/* Connected to Marvell 88SE9215 SATA controller */
+	/* Connected to FL1009 USB 3.0 controller */
 	pcie at 2,0 {
 		/* Port 1, Lane 0 */
 		status = "okay";
@@ -220,8 +256,13 @@ phy1: ethernet-phy at 1 { /* Marvell 88E1318 */
 };
 
 &pinctrl {
-	poweroff: poweroff {
-		marvell,pins = "mpp60";
+	power_led_pin: power-led-pin {
+		marvell,pins = "mpp64";
+		marvell,function = "gpio";
+	};
+
+	backup_led_pin: backup-led-pin {
+		marvell,pins = "mpp63";
 		marvell,function = "gpio";
 	};
 
@@ -235,68 +276,62 @@ power_button_pin: power-button-pin {
 		marvell,function = "gpio";
 	};
 
-	backup_led_pin: backup-led-pin {
-		marvell,pins = "mpp63";
-		marvell,function = "gpio";
-	};
-
-	power_led_pin: power-led-pin {
-		marvell,pins = "mpp64";
+	reset_button_pin: reset-button-pin {
+		marvell,pins = "mpp65";
 		marvell,function = "gpio";
 	};
 
-	reset_button_pin: reset-button-pin {
-		marvell,pins = "mpp65";
+	poweroff_pin: poweroff-pin {
+		marvell,pins = "mpp60";
 		marvell,function = "gpio";
 	};
 };
 
 &nand_controller {
+	compatible = "marvell,armada370-nand", "marvell,pxa3xx-nand";
 	status = "okay";
 
-	nand at 0 {
-		reg = <0>;
-		label = "pxa3xx_nand-0";
-		nand-rb = <0>;
-		marvell,nand-keep-config;
-		nand-on-flash-bbt;
-
-		/* Use Hardware BCH ECC */
-		nand-ecc-strength = <4>;
-		nand-ecc-step-size = <512>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				label = "u-boot";
-				reg = <0x0000000 0x180000>;  /* 1.5MB */
-				read-only;
-			};
+	label = <&nand_controller>;
+	nand-rb = <0>;
+	marvell,nand-keep-config;
+	nand-on-flash-bbt;
 
-			partition at 180000 {
-				label = "u-boot-env";
-				reg = <0x180000 0x20000>;    /* 128KB */
-				read-only;
-			};
+	/* Use Hardware BCH ECC */
+	nand-ecc-strength = <4>;
+	nand-ecc-step-size = <512>;
 
-			partition at 200000 {
-				label = "uImage";
-				reg = <0x0200000 0x600000>;    /* 6MB */
-			};
+	partitions {
+		compatible = "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
 
-			partition at 800000 {
-				label = "minirootfs";
-				reg = <0x0800000 0x400000>;    /* 4MB */
-			};
+		partition at 0 {
+			label = "bootloader";
+			reg = <0x0 0x400000>;		 /* 4MB */
+			//read-only;
+		};
 
-			/* Last MB is for the BBT, i.e. not writable */
-			partition at c00000 {
-				label = "ubifs";
-				reg = <0x0c00000 0x7400000>; /* 116MB */
-			};
+		partition at 0x400000 {
+			label = "environment";
+			reg = <0x400000 0x80000>;    /* 0.5MB */
+			//read-only;
 		};
+
+		backend_state_nand: partition at 0x480000 {
+			label = "state";
+			reg = <0x480000 0x80000>;    /* 0.5MB */
+		};
+
+		partition at 0x500000 {
+			label = "kernel";
+			reg = <0x500000 0x1400000>;    /* 20MB */
+		};
+
+		partition at 0x1900000 {
+			label = "minirootfs";
+			reg = <0x1900000 0x6000000>;    /* 100MB */
+		};
+
+		/* Last MB is for the BBT, i.e. not writable */
 	};
-};
+};
\ No newline at end of file

-- 
2.47.3





More information about the barebox mailing list