This creates a DTSI for Xiaomi devices with 128M NAND.
This allows to consolidate the partitions and a few other nodes for
AC2100 family and Mi Router 3G.
Note that the Mi Router 3 Pro has 256M NAND and differently sized
partitions.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
-#include "mt7621.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
+#include "mt7621_xiaomi_nand_128m.dtsi"
/ {
compatible = "xiaomi,mi-router-3g", "mediatek,mt7621-soc";
label-mac-device = &gmac0;
};
- chosen {
- bootargs = "console=ttyS0,115200n8";
- };
-
leds {
compatible = "gpio-leds";
};
};
- keys {
- compatible = "gpio-keys";
-
- reset {
- label = "reset";
- gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_RESTART>;
- };
- };
-
reg_usb_vbus: regulator {
compatible = "regulator-fixed";
regulator-name = "usb_vbus";
vbus-supply = <®_usb_vbus>;
};
-&nand {
- status = "okay";
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "Bootloader";
- reg = <0x0 0x80000>;
- read-only;
- };
-
- partition@80000 {
- label = "Config";
- reg = <0x80000 0x40000>;
- };
-
- partition@c0000 {
- label = "Bdata";
- reg = <0xc0000 0x40000>;
- read-only;
- };
-
- factory: partition@100000 {
- label = "factory";
- reg = <0x100000 0x40000>;
- read-only;
- };
-
- partition@140000 {
- label = "crash";
- reg = <0x140000 0x40000>;
- };
-
- partition@180000 {
- label = "crash_syslog";
- reg = <0x180000 0x40000>;
- };
-
- partition@1c0000 {
- label = "reserved0";
- reg = <0x1c0000 0x40000>;
- read-only;
- };
-
- /* uboot expects to find kernels at 0x200000 & 0x600000
- * referred to as system 1 & system 2 respectively.
- * a kernel is considered suitable for handing control over
- * if its linux magic number exists & uImage CRC are correct.
- * If either of those conditions fail, a matching sys'n'_fail flag
- * is set in uboot env & a restart performed in the hope that the
- * alternate kernel is okay.
- * if neither kernel checksums ok and both are marked failed, system 2
- * is booted anyway.
- *
- * Note uboot's tftp flash install writes the transferred
- * image to both kernel partitions.
- */
-
- partition@200000 {
- label = "kernel_stock";
- reg = <0x200000 0x400000>;
- };
-
- partition@600000 {
- label = "kernel";
- reg = <0x600000 0x400000>;
- };
-
- /* ubi partition is the result of squashing
- * next consecutive stock partitions:
- * - rootfs0 (rootfs partition for stock kernel0),
- * - rootfs1 (rootfs partition for stock failsafe kernel1),
- * - overlay (used as ubi overlay in stock fw)
- * resulting 117,5MiB space for packages.
- */
-
- partition@a00000 {
- label = "ubi";
- reg = <0xa00000 0x7580000>;
- };
- };
-};
-
&pcie {
status = "okay";
};
--- /dev/null
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+ chosen {
+ bootargs = "console=ttyS0,115200n8";
+ };
+
+ keys: keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+ };
+};
+
+&nand {
+ status = "okay";
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "Bootloader";
+ reg = <0x0 0x80000>;
+ read-only;
+ };
+
+ partition@80000 {
+ label = "Config";
+ reg = <0x80000 0x40000>;
+ };
+
+ partition@c0000 {
+ label = "Bdata";
+ reg = <0xc0000 0x40000>;
+ read-only;
+ };
+
+ factory: partition@100000 {
+ label = "factory";
+ reg = <0x100000 0x40000>;
+ read-only;
+ };
+
+ partition@140000 {
+ label = "crash";
+ reg = <0x140000 0x40000>;
+ };
+
+ partition@180000 {
+ label = "crash_syslog";
+ reg = <0x180000 0x40000>;
+ };
+
+ partition@1c0000 {
+ label = "reserved0";
+ reg = <0x1c0000 0x40000>;
+ read-only;
+ };
+
+ /* uboot expects to find kernels at 0x200000 & 0x600000
+ * referred to as system 1 & system 2 respectively.
+ * a kernel is considered suitable for handing control over
+ * if its linux magic number exists & uImage CRC are correct.
+ * If either of those conditions fail, a matching sys'n'_fail flag
+ * is set in uboot env & a restart performed in the hope that the
+ * alternate kernel is okay.
+ * if neither kernel checksums ok and both are marked failed, system 2
+ * is booted anyway.
+ *
+ * Note uboot's tftp flash install writes the transferred
+ * image to both kernel partitions.
+ */
+
+ /* We keep stock xiaomi firmware (kernel0) here */
+ partition@200000 {
+ label = "kernel_stock";
+ reg = <0x200000 0x400000>;
+ };
+
+ partition@600000 {
+ label = "kernel";
+ reg = <0x600000 0x400000>;
+ };
+
+ /* ubi partition is the result of squashing
+ * next consecutive stock partitions:
+ * - rootfs0 (rootfs partition for stock kernel0),
+ * - rootfs1 (rootfs partition for stock failsafe kernel1),
+ * - overlay (used as ubi overlay in stock fw)
+ * resulting 117,5MiB space for packages.
+ */
+
+ partition@a00000 {
+ label = "ubi";
+ reg = <0xa00000 0x7580000>;
+ };
+ };
+};
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "mt7621.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-
-/ {
- chosen {
- bootargs = "console=ttyS0,115200n8";
- };
-
- keys {
- compatible = "gpio-keys";
-
- reset {
- label = "reset";
- gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_RESTART>;
- };
- };
-};
-
-&nand {
- status = "okay";
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "Bootloader";
- reg = <0x0 0x80000>;
- read-only;
- };
-
- partition@80000 {
- label = "Config";
- reg = <0x80000 0x40000>;
- };
-
- partition@c0000 {
- label = "Bdata";
- reg = <0xc0000 0x40000>;
- read-only;
- };
-
- factory: partition@100000 {
- label = "factory";
- reg = <0x100000 0x40000>;
- read-only;
- };
-
- partition@140000 {
- label = "crash";
- reg = <0x140000 0x40000>;
- };
-
- partition@180000 {
- label = "crash_syslog";
- reg = <0x180000 0x40000>;
- };
-
- partition@1c0000 {
- label = "reserved0";
- reg = <0x1c0000 0x40000>;
- read-only;
- };
-
- /* We keep stock xiaomi firmware (kernel0) here */
- partition@200000 {
- label = "kernel_stock";
- reg = <0x200000 0x400000>;
- };
-
- partition@600000 {
- label = "kernel";
- reg = <0x600000 0x400000>;
- };
-
- partition@a00000 {
- label = "ubi";
- reg = <0xa00000 0x7580000>;
- };
- };
-};
+#include "mt7621_xiaomi_nand_128m.dtsi"
&pcie {
status = "okay";