[openwrt/openwrt] ramips: mt7621: create DTSI for Xiaomi NAND devices
LEDE Commits
lede-commits at lists.infradead.org
Thu Jan 21 16:54:01 EST 2021
adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/93be5926a2c2ebda05486a43f998a2ee38d32e61
commit 93be5926a2c2ebda05486a43f998a2ee38d32e61
Author: Adrian Schmutzler <freifunk at adrianschmutzler.de>
AuthorDate: Tue Jan 19 18:48:48 2021 +0100
ramips: mt7621: create DTSI for Xiaomi NAND devices
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 at adrianschmutzler.de>
---
.../ramips/dts/mt7621_xiaomi_mi-router-3g.dts | 105 +--------------------
...er-ac2100.dtsi => mt7621_xiaomi_nand_128m.dtsi} | 82 +++++-----------
.../ramips/dts/mt7621_xiaomi_router-ac2100.dtsi | 86 +----------------
3 files changed, 25 insertions(+), 248 deletions(-)
diff --git a/target/linux/ramips/dts/mt7621_xiaomi_mi-router-3g.dts b/target/linux/ramips/dts/mt7621_xiaomi_mi-router-3g.dts
index 479cfc354c..40ea6625d4 100644
--- a/target/linux/ramips/dts/mt7621_xiaomi_mi-router-3g.dts
+++ b/target/linux/ramips/dts/mt7621_xiaomi_mi-router-3g.dts
@@ -1,7 +1,4 @@
-#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";
@@ -15,10 +12,6 @@
label-mac-device = &gmac0;
};
- chosen {
- bootargs = "console=ttyS0,115200n8";
- };
-
leds {
compatible = "gpio-leds";
@@ -56,16 +49,6 @@
};
};
- 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";
@@ -80,92 +63,6 @@
vbus-supply = <®_usb_vbus>;
};
-&nand {
- status = "okay";
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition at 0 {
- label = "Bootloader";
- reg = <0x0 0x80000>;
- read-only;
- };
-
- partition at 80000 {
- label = "Config";
- reg = <0x80000 0x40000>;
- };
-
- partition at c0000 {
- label = "Bdata";
- reg = <0xc0000 0x40000>;
- read-only;
- };
-
- factory: partition at 100000 {
- label = "factory";
- reg = <0x100000 0x40000>;
- read-only;
- };
-
- partition at 140000 {
- label = "crash";
- reg = <0x140000 0x40000>;
- };
-
- partition at 180000 {
- label = "crash_syslog";
- reg = <0x180000 0x40000>;
- };
-
- partition at 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 at 200000 {
- label = "kernel_stock";
- reg = <0x200000 0x400000>;
- };
-
- partition at 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 at a00000 {
- label = "ubi";
- reg = <0xa00000 0x7580000>;
- };
- };
-};
-
&pcie {
status = "okay";
};
diff --git a/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi b/target/linux/ramips/dts/mt7621_xiaomi_nand_128m.dtsi
similarity index 59%
copy from target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi
copy to target/linux/ramips/dts/mt7621_xiaomi_nand_128m.dtsi
index 8241517c73..12e6bccc2e 100644
--- a/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi
+++ b/target/linux/ramips/dts/mt7621_xiaomi_nand_128m.dtsi
@@ -10,7 +10,7 @@
bootargs = "console=ttyS0,115200n8";
};
- keys {
+ keys: keys {
compatible = "gpio-keys";
reset {
@@ -68,6 +68,20 @@
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 at 200000 {
label = "kernel_stock";
@@ -79,67 +93,17 @@
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 at a00000 {
label = "ubi";
reg = <0xa00000 0x7580000>;
};
};
};
-
-&pcie {
- status = "okay";
-};
-
-&pcie0 {
- wifi at 0,0 {
- compatible = "mediatek,mt76";
- reg = <0x0000 0 0 0 0>;
- mediatek,mtd-eeprom = <&factory 0x8000>;
- ieee80211-freq-limit = <5000000 6000000>;
- };
-};
-
-&pcie1 {
- wifi at 0,0 {
- compatible = "mediatek,mt76";
- reg = <0x0000 0 0 0 0>;
- mediatek,mtd-eeprom = <&factory 0x0000>;
- ieee80211-freq-limit = <2400000 2500000>;
- };
-};
-
-&gmac0 {
- mtd-mac-address = <&factory 0xe000>;
-};
-
-&switch0 {
- ports {
- port at 0 {
- status = "okay";
- label = "wan";
- mtd-mac-address = <&factory 0xe006>;
- };
-
- port at 2 {
- status = "okay";
- label = "lan1";
- };
-
- port at 3 {
- status = "okay";
- label = "lan2";
- };
-
- port at 4 {
- status = "okay";
- label = "lan3";
- };
- };
-};
-
-&state_default {
- gpio {
- groups = "uart2", "uart3", "wdt";
- function = "gpio";
- };
-};
diff --git a/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi b/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi
index 8241517c73..7e6b3afcdf 100644
--- a/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi
+++ b/target/linux/ramips/dts/mt7621_xiaomi_router-ac2100.dtsi
@@ -1,90 +1,6 @@
// 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 at 0 {
- label = "Bootloader";
- reg = <0x0 0x80000>;
- read-only;
- };
-
- partition at 80000 {
- label = "Config";
- reg = <0x80000 0x40000>;
- };
-
- partition at c0000 {
- label = "Bdata";
- reg = <0xc0000 0x40000>;
- read-only;
- };
-
- factory: partition at 100000 {
- label = "factory";
- reg = <0x100000 0x40000>;
- read-only;
- };
-
- partition at 140000 {
- label = "crash";
- reg = <0x140000 0x40000>;
- };
-
- partition at 180000 {
- label = "crash_syslog";
- reg = <0x180000 0x40000>;
- };
-
- partition at 1c0000 {
- label = "reserved0";
- reg = <0x1c0000 0x40000>;
- read-only;
- };
-
- /* We keep stock xiaomi firmware (kernel0) here */
- partition at 200000 {
- label = "kernel_stock";
- reg = <0x200000 0x400000>;
- };
-
- partition at 600000 {
- label = "kernel";
- reg = <0x600000 0x400000>;
- };
-
- partition at a00000 {
- label = "ubi";
- reg = <0xa00000 0x7580000>;
- };
- };
-};
+#include "mt7621_xiaomi_nand_128m.dtsi"
&pcie {
status = "okay";
More information about the lede-commits
mailing list