Introduce mt7628an_teltonika_rut9m.dtsi to hold the SPI-NOR flash
definition and partition layout specific to the RUT9M series.
This refactor prepares for supporting the Tetonika RUT976
(part of the RUTE series), which shares most hardware with
RUT9M devices but has a different flash layout.
Update RUT9x1 and RUT9x6 DTS files to include the new dtsi.
Existing RUT9M devices remain unchanged.
Signed-off-by: Til Kaiser <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20933
Signed-off-by: Hauke Mehrtens <[email protected]>
--- /dev/null
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7628an_teltonika_rut9xx.dtsi"
+
+&spi0 {
+ status = "okay";
+
+ flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <10000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "config";
+ reg = <0x020000 0x010000>;
+ read-only;
+
+ nvmem-layout {
+ compatible = "fixed-layout";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ macaddr_config_0: macaddr@0 {
+ reg = <0x0 0x6>;
+ compatible = "mac-base";
+ #nvmem-cell-cells = <1>;
+ };
+ };
+ };
+
+ partition@30000 {
+ label = "factory";
+ reg = <0x030000 0x030000>;
+ read-only;
+
+ nvmem-layout {
+ compatible = "fixed-layout";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ eeprom_factory_0: eeprom@0 {
+ reg = <0x20000 0x400>;
+ };
+ };
+ };
+
+ partition@60000 {
+ compatible = "denx,uimage";
+ label = "firmware";
+ reg = <0x060000 0xf10000>;
+ };
+
+ partition@f70000 {
+ label = "event-log";
+ reg = <0xf70000 0x90000>;
+ };
+ };
+ };
+};
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "mt7628an_teltonika_rut9xx.dtsi"
+#include "mt7628an_teltonika_rut9m.dtsi"
/ {
compatible = "teltonika,rut9x1", "mediatek,mt7628an-soc";
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "mt7628an_teltonika_rut9xx.dtsi"
+#include "mt7628an_teltonika_rut9m.dtsi"
/ {
compatible = "teltonika,rut9x6", "mediatek,mt7628an-soc";
};
};
-&spi0 {
- status = "okay";
-
- flash@0 {
- compatible = "jedec,spi-nor";
- reg = <0>;
- spi-max-frequency = <10000000>;
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "u-boot";
- reg = <0x0 0x20000>;
- read-only;
- };
-
- partition@20000 {
- label = "config";
- reg = <0x020000 0x010000>;
- read-only;
-
- nvmem-layout {
- compatible = "fixed-layout";
- #address-cells = <1>;
- #size-cells = <1>;
-
- macaddr_config_0: macaddr@0 {
- reg = <0x0 0x6>;
- compatible = "mac-base";
- #nvmem-cell-cells = <1>;
- };
- };
- };
-
- partition@30000 {
- label = "factory";
- reg = <0x030000 0x030000>;
- read-only;
-
- nvmem-layout {
- compatible = "fixed-layout";
- #address-cells = <1>;
- #size-cells = <1>;
-
- eeprom_factory_0: eeprom@0 {
- reg = <0x20000 0x400>;
- };
- };
- };
-
- partition@60000 {
- compatible = "denx,uimage";
- label = "firmware";
- reg = <0x060000 0xf10000>;
- };
-
- partition@f70000 {
- label = "event-log";
- reg = <0xf70000 0x90000>;
- };
- };
- };
-};
-
&state_default {
gpio {
groups = "i2s", "p4led_an", "p3led_an", "p2led_an", "p1led_an", "p0led_an", "gpio", "wled_an", "perst", "refclk", "spi cs1";