From: Shiji Yang Date: Fri, 8 Aug 2025 12:53:58 +0000 (+0800) Subject: mediatek: dts: fix the broken memory node X-Git-Tag: v25.12.0-rc1~1516 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6f33529a1249826f0bbedd880c4c27e4cbe8a0f0;p=thirdparty%2Fopenwrt.git mediatek: dts: fix the broken memory node Add the missing "device_type" property to fix the memory node. The Linux kernel can not get the memory size without it. Though u-boot can automatically fixup the memory node by adding the "device_type" and "reg" properties if the CONFIG_ARCH_FIXUP_FDT_MEMORY symbol is enabled, it's better not to rely on this optional feature. This patch also adds the reg address for the memory node name to follow the naming rules. Signed-off-by: Shiji Yang Link: https://github.com/openwrt/openwrt/pull/19741 Signed-off-by: Hauke Mehrtens --- diff --git a/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts b/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts index b8fac373a0a..8f24690a3c8 100644 --- a/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts +++ b/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts @@ -11,8 +11,9 @@ label-mac-device = &gmac0; }; - memory { - reg = <0 0x40000000 0 0x0F000000>; + memory@40000000 { + reg = <0 0x40000000 0 0x0f000000>; + device_type = "memory"; }; rtkgsw: rtkgsw@0 { diff --git a/target/linux/mediatek/dts/mt7622-buffalo-wsr-3200ax4s.dts b/target/linux/mediatek/dts/mt7622-buffalo-wsr-3200ax4s.dts index 82cc970fdda..dee8c77341e 100644 --- a/target/linux/mediatek/dts/mt7622-buffalo-wsr-3200ax4s.dts +++ b/target/linux/mediatek/dts/mt7622-buffalo-wsr-3200ax4s.dts @@ -7,8 +7,9 @@ model = "Buffalo WSR-3200AX4S"; compatible = "buffalo,wsr-3200ax4s", "mediatek,mt7622"; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x1f000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi b/target/linux/mediatek/dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi index 8bd58bfe851..ae92fedc589 100644 --- a/target/linux/mediatek/dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi +++ b/target/linux/mediatek/dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi @@ -45,8 +45,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7622-elecom-wrc-2533gent.dts b/target/linux/mediatek/dts/mt7622-elecom-wrc-2533gent.dts index 7fe5d02e1a7..5f8bb3ded8d 100644 --- a/target/linux/mediatek/dts/mt7622-elecom-wrc-2533gent.dts +++ b/target/linux/mediatek/dts/mt7622-elecom-wrc-2533gent.dts @@ -134,8 +134,9 @@ enable-active-high; }; - memory { - reg = <0 0x40000000 0 0x3F000000>; + memory@40000000 { + reg = <0 0x40000000 0 0x3f000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7622-elecom-wrc-x3200gst3.dts b/target/linux/mediatek/dts/mt7622-elecom-wrc-x3200gst3.dts index 2bf4a33a50c..b437fe1b3a1 100644 --- a/target/linux/mediatek/dts/mt7622-elecom-wrc-x3200gst3.dts +++ b/target/linux/mediatek/dts/mt7622-elecom-wrc-x3200gst3.dts @@ -25,8 +25,9 @@ bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8 swiotlb=512"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x1f000000>; + device_type = "memory"; }; leds { diff --git a/target/linux/mediatek/dts/mt7622-linksys-e8450.dtsi b/target/linux/mediatek/dts/mt7622-linksys-e8450.dtsi index 48b25f7a4a0..882ab841a7e 100644 --- a/target/linux/mediatek/dts/mt7622-linksys-e8450.dtsi +++ b/target/linux/mediatek/dts/mt7622-linksys-e8450.dtsi @@ -80,8 +80,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7622-netgear-wax206.dts b/target/linux/mediatek/dts/mt7622-netgear-wax206.dts index ab512e78941..63997432233 100644 --- a/target/linux/mediatek/dts/mt7622-netgear-wax206.dts +++ b/target/linux/mediatek/dts/mt7622-netgear-wax206.dts @@ -108,8 +108,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7622-ruijie-rg-ew3200.dtsi b/target/linux/mediatek/dts/mt7622-ruijie-rg-ew3200.dtsi index 24ed92788ef..0344d3dc6ef 100644 --- a/target/linux/mediatek/dts/mt7622-ruijie-rg-ew3200.dtsi +++ b/target/linux/mediatek/dts/mt7622-ruijie-rg-ew3200.dtsi @@ -71,8 +71,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7622-smartrg-SDG-841-t6.dts b/target/linux/mediatek/dts/mt7622-smartrg-SDG-841-t6.dts index 05fd74a7d30..8cf18f5e074 100644 --- a/target/linux/mediatek/dts/mt7622-smartrg-SDG-841-t6.dts +++ b/target/linux/mediatek/dts/mt7622-smartrg-SDG-841-t6.dts @@ -90,8 +90,9 @@ }; }; - memory { + memory@40000000 { reg = <0x0 0x40000000 0x0 0x40000000>; + device_type = "memory"; }; reserved-memory { diff --git a/target/linux/mediatek/dts/mt7622-ubnt-unifi-6-lr.dtsi b/target/linux/mediatek/dts/mt7622-ubnt-unifi-6-lr.dtsi index 783b0c388e6..f23b1519688 100644 --- a/target/linux/mediatek/dts/mt7622-ubnt-unifi-6-lr.dtsi +++ b/target/linux/mediatek/dts/mt7622-ubnt-unifi-6-lr.dtsi @@ -45,8 +45,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x3f000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7622-xiaomi-redmi-router-ax6s.dts b/target/linux/mediatek/dts/mt7622-xiaomi-redmi-router-ax6s.dts index ebc8731bc70..d3187cc383b 100644 --- a/target/linux/mediatek/dts/mt7622-xiaomi-redmi-router-ax6s.dts +++ b/target/linux/mediatek/dts/mt7622-xiaomi-redmi-router-ax6s.dts @@ -26,8 +26,9 @@ bootargs = "earlycon=uart8250,mmio32,0x11002000 swiotlb=512 ubi.block=0,fit root=/dev/fit0"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x8000000>; + device_type = "memory"; }; leds { diff --git a/target/linux/mediatek/dts/mt7981a-comfast-cf-e393ax.dts b/target/linux/mediatek/dts/mt7981a-comfast-cf-e393ax.dts index 8f7598fc7c8..1cf13ff6a9f 100644 --- a/target/linux/mediatek/dts/mt7981a-comfast-cf-e393ax.dts +++ b/target/linux/mediatek/dts/mt7981a-comfast-cf-e393ax.dts @@ -20,8 +20,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; // 256mb + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-abt-asr3000.dts b/target/linux/mediatek/dts/mt7981b-abt-asr3000.dts index 2b0d39b2c26..651d6461c70 100644 --- a/target/linux/mediatek/dts/mt7981b-abt-asr3000.dts +++ b/target/linux/mediatek/dts/mt7981b-abt-asr3000.dts @@ -25,6 +25,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-asus-rt-ax52.dts b/target/linux/mediatek/dts/mt7981b-asus-rt-ax52.dts index 34cc8ee1317..604d318eaea 100644 --- a/target/linux/mediatek/dts/mt7981b-asus-rt-ax52.dts +++ b/target/linux/mediatek/dts/mt7981b-asus-rt-ax52.dts @@ -19,8 +19,9 @@ bootargs-override = ""; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7981b-cetron-ct3003.dts b/target/linux/mediatek/dts/mt7981b-cetron-ct3003.dts index 11ff28b19f2..285c721d769 100644 --- a/target/linux/mediatek/dts/mt7981b-cetron-ct3003.dts +++ b/target/linux/mediatek/dts/mt7981b-cetron-ct3003.dts @@ -24,8 +24,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-cmcc-a10.dtsi b/target/linux/mediatek/dts/mt7981b-cmcc-a10.dtsi index 91644746a65..2029537518a 100644 --- a/target/linux/mediatek/dts/mt7981b-cmcc-a10.dtsi +++ b/target/linux/mediatek/dts/mt7981b-cmcc-a10.dtsi @@ -24,6 +24,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-cmcc-rax3000m.dts b/target/linux/mediatek/dts/mt7981b-cmcc-rax3000m.dts index a6803fe7dae..36e77eb2c8c 100644 --- a/target/linux/mediatek/dts/mt7981b-cmcc-rax3000m.dts +++ b/target/linux/mediatek/dts/mt7981b-cmcc-rax3000m.dts @@ -27,8 +27,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-creatlentem-clt-r30b1-common.dtsi b/target/linux/mediatek/dts/mt7981b-creatlentem-clt-r30b1-common.dtsi index 90d9ea04a13..17b820252f0 100644 --- a/target/linux/mediatek/dts/mt7981b-creatlentem-clt-r30b1-common.dtsi +++ b/target/linux/mediatek/dts/mt7981b-creatlentem-clt-r30b1-common.dtsi @@ -55,8 +55,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7981b-gatonetworks-gdsp.dts b/target/linux/mediatek/dts/mt7981b-gatonetworks-gdsp.dts index 2719b176560..fd08f724b5d 100644 --- a/target/linux/mediatek/dts/mt7981b-gatonetworks-gdsp.dts +++ b/target/linux/mediatek/dts/mt7981b-gatonetworks-gdsp.dts @@ -22,8 +22,9 @@ rootdisk = <&firmware>; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/dts/mt7981b-h3c-magic-nx30-pro.dts b/target/linux/mediatek/dts/mt7981b-h3c-magic-nx30-pro.dts index dc62eeefd15..2f141b8c7a7 100644 --- a/target/linux/mediatek/dts/mt7981b-h3c-magic-nx30-pro.dts +++ b/target/linux/mediatek/dts/mt7981b-h3c-magic-nx30-pro.dts @@ -25,8 +25,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-huasifei-wh3000.dts b/target/linux/mediatek/dts/mt7981b-huasifei-wh3000.dts index 3f58ae42a19..4c1bae087c9 100644 --- a/target/linux/mediatek/dts/mt7981b-huasifei-wh3000.dts +++ b/target/linux/mediatek/dts/mt7981b-huasifei-wh3000.dts @@ -60,6 +60,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7981b-jcg-q30-pro.dts b/target/linux/mediatek/dts/mt7981b-jcg-q30-pro.dts index a571d9afde8..0045c452a7f 100644 --- a/target/linux/mediatek/dts/mt7981b-jcg-q30-pro.dts +++ b/target/linux/mediatek/dts/mt7981b-jcg-q30-pro.dts @@ -26,8 +26,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-mercusys-mr80x-v3.dts b/target/linux/mediatek/dts/mt7981b-mercusys-mr80x-v3.dts index 377c1c71fd5..0db7a61f0df 100644 --- a/target/linux/mediatek/dts/mt7981b-mercusys-mr80x-v3.dts +++ b/target/linux/mediatek/dts/mt7981b-mercusys-mr80x-v3.dts @@ -22,8 +22,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7981b-nokia-ea0326gmp.dts b/target/linux/mediatek/dts/mt7981b-nokia-ea0326gmp.dts index 5865d9f1a78..707ec2b4ee9 100644 --- a/target/linux/mediatek/dts/mt7981b-nokia-ea0326gmp.dts +++ b/target/linux/mediatek/dts/mt7981b-nokia-ea0326gmp.dts @@ -26,6 +26,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-openembed-som7981.dts b/target/linux/mediatek/dts/mt7981b-openembed-som7981.dts index 61465d90116..4c3f80ed5e1 100644 --- a/target/linux/mediatek/dts/mt7981b-openembed-som7981.dts +++ b/target/linux/mediatek/dts/mt7981b-openembed-som7981.dts @@ -25,6 +25,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; beeper { diff --git a/target/linux/mediatek/dts/mt7981b-openwrt-one.dts b/target/linux/mediatek/dts/mt7981b-openwrt-one.dts index d1a24db38a1..18a569daf8f 100644 --- a/target/linux/mediatek/dts/mt7981b-openwrt-one.dts +++ b/target/linux/mediatek/dts/mt7981b-openwrt-one.dts @@ -22,8 +22,9 @@ rootdisk = <&ubi_fit_volume>; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/dts/mt7981b-qihoo-360t7.dts b/target/linux/mediatek/dts/mt7981b-qihoo-360t7.dts index db7fa5e870c..67ea2ff4c5a 100644 --- a/target/linux/mediatek/dts/mt7981b-qihoo-360t7.dts +++ b/target/linux/mediatek/dts/mt7981b-qihoo-360t7.dts @@ -25,8 +25,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-routerich-ax3000-common.dtsi b/target/linux/mediatek/dts/mt7981b-routerich-ax3000-common.dtsi index 9b41774b88a..38fb371d8a2 100644 --- a/target/linux/mediatek/dts/mt7981b-routerich-ax3000-common.dtsi +++ b/target/linux/mediatek/dts/mt7981b-routerich-ax3000-common.dtsi @@ -108,8 +108,9 @@ }; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; }; diff --git a/target/linux/mediatek/dts/mt7981b-tplink-fr365v1.dts b/target/linux/mediatek/dts/mt7981b-tplink-fr365v1.dts index af6fa90d7e0..5815f84912f 100644 --- a/target/linux/mediatek/dts/mt7981b-tplink-fr365v1.dts +++ b/target/linux/mediatek/dts/mt7981b-tplink-fr365v1.dts @@ -23,8 +23,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-xiaomi-mi-router-common.dtsi b/target/linux/mediatek/dts/mt7981b-xiaomi-mi-router-common.dtsi index ceb238bde2f..4ff39064d5e 100644 --- a/target/linux/mediatek/dts/mt7981b-xiaomi-mi-router-common.dtsi +++ b/target/linux/mediatek/dts/mt7981b-xiaomi-mi-router-common.dtsi @@ -19,8 +19,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8102ax.dts b/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8102ax.dts index c0f7fff8010..80dd2035605 100644 --- a/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8102ax.dts +++ b/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8102ax.dts @@ -22,8 +22,9 @@ bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8103ax.dts b/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8103ax.dts index 67b1eef4118..ee066cf5388 100644 --- a/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8103ax.dts +++ b/target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8103ax.dts @@ -22,8 +22,9 @@ bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-acer-predator-w6x.dts b/target/linux/mediatek/dts/mt7986a-acer-predator-w6x.dts index d46497ec331..c80f80e1cf7 100644 --- a/target/linux/mediatek/dts/mt7986a-acer-predator-w6x.dts +++ b/target/linux/mediatek/dts/mt7986a-acer-predator-w6x.dts @@ -19,8 +19,9 @@ stdout-path = "serial0:115200n8"; }; - memory@0 { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7986a-acer-w6-common.dtsi b/target/linux/mediatek/dts/mt7986a-acer-w6-common.dtsi index 8b35ce25178..f0df5884732 100644 --- a/target/linux/mediatek/dts/mt7986a-acer-w6-common.dtsi +++ b/target/linux/mediatek/dts/mt7986a-acer-w6-common.dtsi @@ -12,8 +12,9 @@ bootargs = "dm-mod.create=\"acer,,,ro,0 1 zero 1 0 0 0\" rootfstype=squashfs,ext4 rootwait root=/dev/mmcblk0p6 fstools_ignore_partname=1"; }; - memory@0 { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7986a-asus-rt-ax59u.dts b/target/linux/mediatek/dts/mt7986a-asus-rt-ax59u.dts index 7e0c05618f5..d213c767937 100644 --- a/target/linux/mediatek/dts/mt7986a-asus-rt-ax59u.dts +++ b/target/linux/mediatek/dts/mt7986a-asus-rt-ax59u.dts @@ -26,8 +26,9 @@ bootargs-override = ""; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986a-asus-tuf-ax4200.dts b/target/linux/mediatek/dts/mt7986a-asus-tuf-ax4200.dts index f0551183986..712584a3af7 100644 --- a/target/linux/mediatek/dts/mt7986a-asus-tuf-ax4200.dts +++ b/target/linux/mediatek/dts/mt7986a-asus-tuf-ax4200.dts @@ -25,8 +25,9 @@ bootargs-override = ""; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986a-asus-tuf-ax6000.dts b/target/linux/mediatek/dts/mt7986a-asus-tuf-ax6000.dts index 4d5c8410a3c..e0faaaa11b5 100644 --- a/target/linux/mediatek/dts/mt7986a-asus-tuf-ax6000.dts +++ b/target/linux/mediatek/dts/mt7986a-asus-tuf-ax6000.dts @@ -25,8 +25,9 @@ bootargs-override = ""; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986a-bananapi-bpi-r3-mini.dts b/target/linux/mediatek/dts/mt7986a-bananapi-bpi-r3-mini.dts index f39fd96596c..6808db80feb 100644 --- a/target/linux/mediatek/dts/mt7986a-bananapi-bpi-r3-mini.dts +++ b/target/linux/mediatek/dts/mt7986a-bananapi-bpi-r3-mini.dts @@ -32,8 +32,9 @@ rootdisk-spim-nand = <&nand_rootdisk>; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x80000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts b/target/linux/mediatek/dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts index 10c53596e50..97a96aadea2 100644 --- a/target/linux/mediatek/dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts +++ b/target/linux/mediatek/dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts @@ -26,6 +26,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-jdcloud-re-cp-03.dts b/target/linux/mediatek/dts/mt7986a-jdcloud-re-cp-03.dts index 286c24a9f1a..a318ad1ae48 100644 --- a/target/linux/mediatek/dts/mt7986a-jdcloud-re-cp-03.dts +++ b/target/linux/mediatek/dts/mt7986a-jdcloud-re-cp-03.dts @@ -30,6 +30,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-netcore-n60-pro.dts b/target/linux/mediatek/dts/mt7986a-netcore-n60-pro.dts index 3af77929718..786c5eb312f 100644 --- a/target/linux/mediatek/dts/mt7986a-netcore-n60-pro.dts +++ b/target/linux/mediatek/dts/mt7986a-netcore-n60-pro.dts @@ -28,6 +28,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-netcore-n60.dts b/target/linux/mediatek/dts/mt7986a-netcore-n60.dts index 484c93d4a78..6ab0f497c35 100644 --- a/target/linux/mediatek/dts/mt7986a-netcore-n60.dts +++ b/target/linux/mediatek/dts/mt7986a-netcore-n60.dts @@ -26,8 +26,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x10000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986a-ruijie-rg-x60-pro.dts b/target/linux/mediatek/dts/mt7986a-ruijie-rg-x60-pro.dts index 9f40fec043e..3628ad00e11 100644 --- a/target/linux/mediatek/dts/mt7986a-ruijie-rg-x60-pro.dts +++ b/target/linux/mediatek/dts/mt7986a-ruijie-rg-x60-pro.dts @@ -25,6 +25,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-tplink-archer-ax80-v1.dts b/target/linux/mediatek/dts/mt7986a-tplink-archer-ax80-v1.dts index 841501c7cf5..12f03e1fdad 100644 --- a/target/linux/mediatek/dts/mt7986a-tplink-archer-ax80-v1.dts +++ b/target/linux/mediatek/dts/mt7986a-tplink-archer-ax80-v1.dts @@ -25,6 +25,7 @@ memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; gpio-keys { diff --git a/target/linux/mediatek/dts/mt7986a-tplink-tl-xdr-common.dtsi b/target/linux/mediatek/dts/mt7986a-tplink-tl-xdr-common.dtsi index 1649b0775de..0056f6f2246 100644 --- a/target/linux/mediatek/dts/mt7986a-tplink-tl-xdr-common.dtsi +++ b/target/linux/mediatek/dts/mt7986a-tplink-tl-xdr-common.dtsi @@ -22,8 +22,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/dts/mt7986a-tplink-tl-xtr8488.dts b/target/linux/mediatek/dts/mt7986a-tplink-tl-xtr8488.dts index e3d3aa37b2b..c2ed7c9a284 100644 --- a/target/linux/mediatek/dts/mt7986a-tplink-tl-xtr8488.dts +++ b/target/linux/mediatek/dts/mt7986a-tplink-tl-xtr8488.dts @@ -26,8 +26,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/dts/mt7986a-xiaomi-redmi-router-ax6000.dtsi b/target/linux/mediatek/dts/mt7986a-xiaomi-redmi-router-ax6000.dtsi index fe3e7609147..33754343938 100644 --- a/target/linux/mediatek/dts/mt7986a-xiaomi-redmi-router-ax6000.dtsi +++ b/target/linux/mediatek/dts/mt7986a-xiaomi-redmi-router-ax6000.dtsi @@ -20,8 +20,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986a-zyxel-ex5601-t0-common.dtsi b/target/linux/mediatek/dts/mt7986a-zyxel-ex5601-t0-common.dtsi index b68f386e8bc..86c08138aca 100644 --- a/target/linux/mediatek/dts/mt7986a-zyxel-ex5601-t0-common.dtsi +++ b/target/linux/mediatek/dts/mt7986a-zyxel-ex5601-t0-common.dtsi @@ -23,8 +23,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/dts/mt7986a-zyxel-ex5700-telenor.dts b/target/linux/mediatek/dts/mt7986a-zyxel-ex5700-telenor.dts index 20e9146e2a3..c2a0ef2ab00 100644 --- a/target/linux/mediatek/dts/mt7986a-zyxel-ex5700-telenor.dts +++ b/target/linux/mediatek/dts/mt7986a-zyxel-ex5700-telenor.dts @@ -27,8 +27,9 @@ bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/dts/mt7986b-mercusys-mr90x-v1-common.dtsi b/target/linux/mediatek/dts/mt7986b-mercusys-mr90x-v1-common.dtsi index 5522c58af21..964c17e8212 100644 --- a/target/linux/mediatek/dts/mt7986b-mercusys-mr90x-v1-common.dtsi +++ b/target/linux/mediatek/dts/mt7986b-mercusys-mr90x-v1-common.dtsi @@ -21,8 +21,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7986b-tplink-re6000xd.dts b/target/linux/mediatek/dts/mt7986b-tplink-re6000xd.dts index 44a5e21e7c2..12e264073d0 100644 --- a/target/linux/mediatek/dts/mt7986b-tplink-re6000xd.dts +++ b/target/linux/mediatek/dts/mt7986b-tplink-re6000xd.dts @@ -24,8 +24,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; keys { diff --git a/target/linux/mediatek/dts/mt7988a-smartrg-mt-stuart.dtsi b/target/linux/mediatek/dts/mt7988a-smartrg-mt-stuart.dtsi index a0a88047267..a8eeebda6c8 100644 --- a/target/linux/mediatek/dts/mt7988a-smartrg-mt-stuart.dtsi +++ b/target/linux/mediatek/dts/mt7988a-smartrg-mt-stuart.dtsi @@ -27,8 +27,9 @@ bootargs = "console=ttyS0,115200n1 pci=pcie_bus_perf root=PARTLABEL=rootfs"; }; - memory { + memory@40000000 { reg = <0x0 0x40000000 0x0 0x40000000>; + device_type = "memory"; }; reserved-memory { diff --git a/target/linux/mediatek/dts/mt7988d-asus-zenwifi-bt8.dtsi b/target/linux/mediatek/dts/mt7988d-asus-zenwifi-bt8.dtsi index 20e7a3839c6..1d916d760fd 100644 --- a/target/linux/mediatek/dts/mt7988d-asus-zenwifi-bt8.dtsi +++ b/target/linux/mediatek/dts/mt7988d-asus-zenwifi-bt8.dtsi @@ -86,8 +86,9 @@ led-upgrade = &led_status_blue; }; - memory { + memory@40000000 { reg = <0x0 0x40000000 0x0 0x40000000>; + device_type = "memory"; }; cpus { diff --git a/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7981-rfb.dts b/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7981-rfb.dts index 6fca59d3ef9..28bcc155dfb 100644 --- a/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7981-rfb.dts +++ b/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7981-rfb.dts @@ -20,8 +20,9 @@ bootargs-append = " root=/dev/fit0 rootwait"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x20000000>; + device_type = "memory"; }; reg_3p3v: regulator-3p3v { diff --git a/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dtsi b/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dtsi index 26d560bd4bc..0b6df172148 100644 --- a/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dtsi +++ b/target/linux/mediatek/files-6.12/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dtsi @@ -19,8 +19,9 @@ stdout-path = "serial0:115200n8"; }; - memory { + memory@40000000 { reg = <0 0x40000000 0 0x40000000>; + device_type = "memory"; }; reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/patches-6.12/188-arm64-dts-mediatek-add-MT7988A-reference-board-devic.patch b/target/linux/mediatek/patches-6.12/188-arm64-dts-mediatek-add-MT7988A-reference-board-devic.patch index 23bc2ea2032..f968ac15cfe 100644 --- a/target/linux/mediatek/patches-6.12/188-arm64-dts-mediatek-add-MT7988A-reference-board-devic.patch +++ b/target/linux/mediatek/patches-6.12/188-arm64-dts-mediatek-add-MT7988A-reference-board-devic.patch @@ -811,7 +811,7 @@ Signed-off-by: Daniel Golle +}; --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt7988a-rfb.dts -@@ -0,0 +1,470 @@ +@@ -0,0 +1,471 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (C) 2022 MediaTek Inc. @@ -836,8 +836,9 @@ Signed-off-by: Daniel Golle + pci=pcie_bus_perf"; + }; + -+ memory { ++ memory@40000000 { + reg = <0 0x40000000 0 0x40000000>; ++ device_type = "memory"; + }; + + reg_1p8v: regulator-1p8v { diff --git a/target/linux/mediatek/patches-6.12/189-arm64-dts-mediatek-mt7988a-complete-bpi-r4.patch b/target/linux/mediatek/patches-6.12/189-arm64-dts-mediatek-mt7988a-complete-bpi-r4.patch index a8b7a741348..8eccb6f8f10 100644 --- a/target/linux/mediatek/patches-6.12/189-arm64-dts-mediatek-mt7988a-complete-bpi-r4.patch +++ b/target/linux/mediatek/patches-6.12/189-arm64-dts-mediatek-mt7988a-complete-bpi-r4.patch @@ -194,7 +194,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 }; fan: pwm-fan { -@@ -50,6 +54,141 @@ +@@ -50,6 +54,142 @@ rate-select0-gpios = <&pio 21 GPIO_ACTIVE_LOW>; maximum-power-milliwatt = <3000>; }; @@ -210,8 +210,9 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 + led-upgrade = &led_green; + }; + -+ memory { ++ memory@40000000 { + reg = <0x00 0x40000000 0x00 0x10000000>; ++ device_type = "memory"; + }; + + /* SFP1 cage (WAN) */ @@ -336,7 +337,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 }; &cci { -@@ -174,6 +313,10 @@ +@@ -174,6 +314,10 @@ color = ; }; @@ -347,7 +348,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 &i2c0 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins>; -@@ -265,6 +408,14 @@ +@@ -265,6 +409,14 @@ #size-cells = <0>; reg = <1>; }; @@ -362,7 +363,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 }; }; -@@ -364,34 +515,6 @@ +@@ -364,34 +516,6 @@ }; }; @@ -397,7 +398,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 i2p5gbe_led0_pins: 2p5gbe-led0-pins { mux { function = "led"; -@@ -399,13 +522,6 @@ +@@ -399,13 +523,6 @@ }; }; @@ -411,7 +412,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 mmc0_pins_emmc_45: mmc0-emmc-45-pins { mux { function = "flash"; -@@ -427,40 +543,12 @@ +@@ -427,40 +544,12 @@ }; }; @@ -452,7 +453,7 @@ Subject: [PATCH 32/32] WIP: add BPi-R4 }; &pwm { -@@ -500,6 +588,32 @@ +@@ -500,6 +589,32 @@ reg = <0x0 0x200000>; read-only; };