ath79: create common DTSI for Senao qca955x APs
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>
Wed, 24 Feb 2021 12:14:12 +0000 (13:14 +0100)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Wed, 24 Feb 2021 13:08:30 +0000 (14:08 +0100)
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@pm.me>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ath79/dts/qca9557_engenius_eap1200h.dts
target/linux/ath79/dts/qca9557_engenius_enstationac-v1.dts
target/linux/ath79/dts/qca955x_senao_loader.dtsi [new file with mode: 0644]

index a7a77141e5e4453a1b73303840f1863065b87d1e..5a86da4bb39f0331699023be69cfff87b8ea0dbf 100644 (file)
@@ -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";
                        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@0 {
-                               compatible = "openwrt,uimage", "denx,uimage";
-                               openwrt,ih-magic = <IH_MAGIC_OKLI>;
-                               label = "firmware";
-                               reg = <0x0 0x0>;
-                       };
-               };
-       };
 };
 
-&spi {
-       status = "okay";
-
-       flash@0 {
-               compatible = "jedec,spi-nor";
-               reg = <0>;
-               spi-max-frequency = <40000000>;
-
-               partitions {
-                       compatible = "fixed-partitions";
-                       #address-cells = <1>;
-                       #size-cells = <1>;
-
-                       partition@0 {
-                               label = "u-boot";
-                               reg = <0x000000 0x040000>;
-                               read-only;
-                       };
-
-                       partition@40000 {
-                               label = "u-boot-env";
-                               reg = <0x040000 0x010000>;
-                       };
-
-                       partition@50000 {
-                               label = "custom";
-                               reg = <0x050000 0x050000>;
-                               read-only;
-                       };
-
-                       partition@a0000 {
-                               label = "loader";
-                               reg = <0x0a0000 0x010000>;
-                               read-only;
-                       };
-
-                       fwconcat1: partition@b0000 {
-                               label = "fwconcat1";
-                               reg = <0x0b0000 0x170000>;
-                       };
-
-                       partition@220000 {
-                               label = "fakeroot";
-                               reg = <0x220000 0x010000>;
-                               read-only;
-                       };
-
-                       fwconcat0: partition@230000 {
-                               label = "fwconcat0";
-                               reg = <0x230000 0xb40000>;
-                       };
-
-                       partition@d70000 {
-                               label = "failsafe";
-                               reg = <0xd70000 0x280000>;
-                               read-only;
-                       };
-
-                       art: partition@ff0000 {
-                               label = "art";
-                               reg = <0xff0000 0x010000>;
-                               read-only;
-                       };
-               };
+&partitions {
+       art: partition@ff0000 {
+               label = "art";
+               reg = <0xff0000 0x010000>;
+               read-only;
        };
 };
 
index af397dfd3a77167e1a6b92ffc769086ae540c9e8..69569968667c7e1c47bcfd67277471e36d50fcbd 100644 (file)
@@ -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";
                        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@0 {
-                               compatible = "openwrt,uimage", "denx,uimage";
-                               openwrt,ih-magic = <IH_MAGIC_OKLI>;
-                               label = "firmware";
-                               reg = <0x0 0x0>;
-                       };
-               };
-       };
 };
 
-&spi {
-       status = "okay";
-
-       flash@0 {
-               compatible = "jedec,spi-nor";
-               reg = <0>;
-               spi-max-frequency = <40000000>;
-
-               partitions {
-                       compatible = "fixed-partitions";
-                       #address-cells = <1>;
-                       #size-cells = <1>;
-
-                       partition@0 {
-                               label = "u-boot";
-                               reg = <0x000000 0x040000>;
-                               read-only;
-                       };
-
-                       partition@40000 {
-                               label = "u-boot-env";
-                               reg = <0x040000 0x010000>;
-                       };
-
-                       partition@50000 {
-                               label = "custom";
-                               reg = <0x050000 0x050000>;
-                               read-only;
-                       };
-
-                       partition@a0000 {
-                               label = "loader";
-                               reg = <0x0a0000 0x010000>;
-                               read-only;
-                       };
-
-                       fwconcat1: partition@b0000 {
-                               label = "fwconcat1";
-                               reg = <0x0b0000 0x170000>;
-                       };
-
-                       partition@220000 {
-                               label = "fakeroot";
-                               reg = <0x220000 0x010000>;
-                               read-only;
-                       };
-
-                       fwconcat0: partition@230000 {
-                               label = "fwconcat0";
-                               reg = <0x230000 0xb40000>;
-                       };
-
-                       partition@d70000 {
-                               label = "failsafe";
-                               reg = <0xd70000 0x280000>;
-                               read-only;
-                       };
-
-                       art: partition@ff0000 {
-                               label = "art";
-                               reg = <0xff0000 0x010000>;
-                               read-only;
-                       };
-               };
+&partitions {
+       art: partition@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 (file)
index 0000000..3f5fc0e
--- /dev/null
@@ -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@0 {
+                               compatible = "openwrt,uimage", "denx,uimage";
+                               openwrt,ih-magic = <IH_MAGIC_OKLI>;
+                               label = "firmware";
+                               reg = <0x0 0x0>;
+                       };
+               };
+       };
+};
+
+&spi {
+       status = "okay";
+
+       flash@0 {
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <40000000>;
+
+               partitions: partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "u-boot";
+                               reg = <0x000000 0x040000>;
+                               read-only;
+                       };
+
+                       partition@40000 {
+                               label = "u-boot-env";
+                               reg = <0x040000 0x010000>;
+                       };
+
+                       partition@50000 {
+                               label = "custom";
+                               reg = <0x050000 0x050000>;
+                               read-only;
+                       };
+
+                       partition@a0000 {
+                               label = "loader";
+                               reg = <0x0a0000 0x010000>;
+                               read-only;
+                       };
+
+                       fwconcat1: partition@b0000 {
+                               label = "fwconcat1";
+                               reg = <0x0b0000 0x170000>;
+                       };
+
+                       partition@220000 {
+                               label = "fakeroot";
+                               reg = <0x220000 0x010000>;
+                               read-only;
+                       };
+
+                       fwconcat0: partition@230000 {
+                               label = "fwconcat0";
+                               reg = <0x230000 0xb40000>;
+                       };
+
+                       partition@d70000 {
+                               label = "failsafe";
+                               reg = <0xd70000 0x280000>;
+                               read-only;
+                       };
+
+                       /* additional partitions in device DTS files */
+               };
+       };
+};