[openwrt/openwrt] ath79: create common DTSI for Senao qca955x APs

LEDE Commits lede-commits at lists.infradead.org
Wed Feb 24 08:08:38 EST 2021


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/9b37db5caacdb46710ce6bfc8d37ae2ad02b843b

commit 9b37db5caacdb46710ce6bfc8d37ae2ad02b843b
Author: Adrian Schmutzler <freifunk at adrianschmutzler.de>
AuthorDate: Wed Feb 24 13:14:12 2021 +0100

    ath79: create common DTSI for Senao qca955x APs
    
    This creates a shared DTSI for qca955x Senao/Engenius APs with
    concatenated firmware partition/okli loader:
    
     - EAP1200H
     - EnstationAC v1
    
    To make this usable for future boards with 32 MB flash as well,
    split the partitions node already.
    
    Suggested-by: Michael Pratt <mcpratt at pm.me>
    Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
 .../linux/ath79/dts/qca9557_engenius_eap1200h.dts  | 91 ++--------------------
 .../ath79/dts/qca9557_engenius_enstationac-v1.dts  | 91 ++--------------------
 target/linux/ath79/dts/qca955x_senao_loader.dtsi   | 89 +++++++++++++++++++++
 3 files changed, 101 insertions(+), 170 deletions(-)

diff --git a/target/linux/ath79/dts/qca9557_engenius_eap1200h.dts b/target/linux/ath79/dts/qca9557_engenius_eap1200h.dts
index a7a77141e5..5a86da4bb3 100644
--- a/target/linux/ath79/dts/qca9557_engenius_eap1200h.dts
+++ b/target/linux/ath79/dts/qca9557_engenius_eap1200h.dts
@@ -1,10 +1,9 @@
 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 
-#include "qca955x.dtsi"
+#include "qca955x_senao_loader.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
-#include <dt-bindings/mtd/partitions/uimage.h>
 
 / {
 	compatible = "engenius,eap1200h", "qca,qca9557";
@@ -55,91 +54,13 @@
 			gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
 		};
 	};
-
-	virtual_flash {
-		compatible = "mtd-concat";
-
-		devices = <&fwconcat0 &fwconcat1>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				compatible = "openwrt,uimage", "denx,uimage";
-				openwrt,ih-magic = <IH_MAGIC_OKLI>;
-				label = "firmware";
-				reg = <0x0 0x0>;
-			};
-		};
-	};
 };
 
-&spi {
-	status = "okay";
-
-	flash at 0 {
-		compatible = "jedec,spi-nor";
-		reg = <0>;
-		spi-max-frequency = <40000000>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				label = "u-boot";
-				reg = <0x000000 0x040000>;
-				read-only;
-			};
-
-			partition at 40000 {
-				label = "u-boot-env";
-				reg = <0x040000 0x010000>;
-			};
-
-			partition at 50000 {
-				label = "custom";
-				reg = <0x050000 0x050000>;
-				read-only;
-			};
-
-			partition at a0000 {
-				label = "loader";
-				reg = <0x0a0000 0x010000>;
-				read-only;
-			};
-
-			fwconcat1: partition at b0000 {
-				label = "fwconcat1";
-				reg = <0x0b0000 0x170000>;
-			};
-
-			partition at 220000 {
-				label = "fakeroot";
-				reg = <0x220000 0x010000>;
-				read-only;
-			};
-
-			fwconcat0: partition at 230000 {
-				label = "fwconcat0";
-				reg = <0x230000 0xb40000>;
-			};
-
-			partition at d70000 {
-				label = "failsafe";
-				reg = <0xd70000 0x280000>;
-				read-only;
-			};
-
-			art: partition at ff0000 {
-				label = "art";
-				reg = <0xff0000 0x010000>;
-				read-only;
-			};
-		};
+&partitions {
+	art: partition at ff0000 {
+		label = "art";
+		reg = <0xff0000 0x010000>;
+		read-only;
 	};
 };
 
diff --git a/target/linux/ath79/dts/qca9557_engenius_enstationac-v1.dts b/target/linux/ath79/dts/qca9557_engenius_enstationac-v1.dts
index af397dfd3a..6956996866 100644
--- a/target/linux/ath79/dts/qca9557_engenius_enstationac-v1.dts
+++ b/target/linux/ath79/dts/qca9557_engenius_enstationac-v1.dts
@@ -1,10 +1,9 @@
 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 
-#include "qca955x.dtsi"
+#include "qca955x_senao_loader.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
-#include <dt-bindings/mtd/partitions/uimage.h>
 
 / {
 	compatible = "engenius,enstationac-v1", "qca,qca9557";
@@ -59,91 +58,13 @@
 			gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
 		};
 	};
-
-	virtual_flash {
-		compatible = "mtd-concat";
-
-		devices = <&fwconcat0 &fwconcat1>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				compatible = "openwrt,uimage", "denx,uimage";
-				openwrt,ih-magic = <IH_MAGIC_OKLI>;
-				label = "firmware";
-				reg = <0x0 0x0>;
-			};
-		};
-	};
 };
 
-&spi {
-	status = "okay";
-
-	flash at 0 {
-		compatible = "jedec,spi-nor";
-		reg = <0>;
-		spi-max-frequency = <40000000>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				label = "u-boot";
-				reg = <0x000000 0x040000>;
-				read-only;
-			};
-
-			partition at 40000 {
-				label = "u-boot-env";
-				reg = <0x040000 0x010000>;
-			};
-
-			partition at 50000 {
-				label = "custom";
-				reg = <0x050000 0x050000>;
-				read-only;
-			};
-
-			partition at a0000 {
-				label = "loader";
-				reg = <0x0a0000 0x010000>;
-				read-only;
-			};
-
-			fwconcat1: partition at b0000 {
-				label = "fwconcat1";
-				reg = <0x0b0000 0x170000>;
-			};
-
-			partition at 220000 {
-				label = "fakeroot";
-				reg = <0x220000 0x010000>;
-				read-only;
-			};
-
-			fwconcat0: partition at 230000 {
-				label = "fwconcat0";
-				reg = <0x230000 0xb40000>;
-			};
-
-			partition at d70000 {
-				label = "failsafe";
-				reg = <0xd70000 0x280000>;
-				read-only;
-			};
-
-			art: partition at ff0000 {
-				label = "art";
-				reg = <0xff0000 0x010000>;
-				read-only;
-			};
-		};
+&partitions {
+	art: partition at ff0000 {
+		label = "art";
+		reg = <0xff0000 0x010000>;
+		read-only;
 	};
 };
 
diff --git a/target/linux/ath79/dts/qca955x_senao_loader.dtsi b/target/linux/ath79/dts/qca955x_senao_loader.dtsi
new file mode 100644
index 0000000000..3f5fc0e938
--- /dev/null
+++ b/target/linux/ath79/dts/qca955x_senao_loader.dtsi
@@ -0,0 +1,89 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca955x.dtsi"
+
+#include <dt-bindings/mtd/partitions/uimage.h>
+
+/ {
+	virtual_flash {
+		compatible = "mtd-concat";
+
+		devices = <&fwconcat0 &fwconcat1>;
+
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition at 0 {
+				compatible = "openwrt,uimage", "denx,uimage";
+				openwrt,ih-magic = <IH_MAGIC_OKLI>;
+				label = "firmware";
+				reg = <0x0 0x0>;
+			};
+		};
+	};
+};
+
+&spi {
+	status = "okay";
+
+	flash at 0 {
+		compatible = "jedec,spi-nor";
+		reg = <0>;
+		spi-max-frequency = <40000000>;
+
+		partitions: partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition at 0 {
+				label = "u-boot";
+				reg = <0x000000 0x040000>;
+				read-only;
+			};
+
+			partition at 40000 {
+				label = "u-boot-env";
+				reg = <0x040000 0x010000>;
+			};
+
+			partition at 50000 {
+				label = "custom";
+				reg = <0x050000 0x050000>;
+				read-only;
+			};
+
+			partition at a0000 {
+				label = "loader";
+				reg = <0x0a0000 0x010000>;
+				read-only;
+			};
+
+			fwconcat1: partition at b0000 {
+				label = "fwconcat1";
+				reg = <0x0b0000 0x170000>;
+			};
+
+			partition at 220000 {
+				label = "fakeroot";
+				reg = <0x220000 0x010000>;
+				read-only;
+			};
+
+			fwconcat0: partition at 230000 {
+				label = "fwconcat0";
+				reg = <0x230000 0xb40000>;
+			};
+
+			partition at d70000 {
+				label = "failsafe";
+				reg = <0xd70000 0x280000>;
+				read-only;
+			};
+
+			/* additional partitions in device DTS files */
+		};
+	};
+};



More information about the lede-commits mailing list