diff options
author | Felix Baumann <felix.bau@gmx.de> | 2023-04-21 03:07:58 +0200 |
---|---|---|
committer | David Bauer <mail@david-bauer.net> | 2023-04-30 21:08:51 +0200 |
commit | 749cc6ffc4d1607a31426f486da5ae97d3b55c40 (patch) | |
tree | 3cd91b4e2b073363c33889b803502525b35fb915 | |
parent | 3960c220daabe5b58381af1a8c7b9dd2e6b7e815 (diff) | |
download | upstream-749cc6ffc4d1607a31426f486da5ae97d3b55c40.tar.gz upstream-749cc6ffc4d1607a31426f486da5ae97d3b55c40.tar.bz2 upstream-749cc6ffc4d1607a31426f486da5ae97d3b55c40.zip |
ramips: Cudy X6 fixes / improvements
- Correct WiFi MACs, they didn't match oem firmware
- Move nvmem-cells to bdinfo partition and remove &bdinfo reference
- Add OEM device model name R13 to SUPPORTED_DEVICES
This allows sysupgrading from Cudy's OpenWrt fork without force
- Label red_led and use it during failsafe mode and upgrades
MAC addresses as verified by OEM firmware:
use address source
LAN b4:4b:d6:2d:c8:4a label
WAN b4:4b:d6:2d:c8:4b label + 1
2g b4:4b:d6:2d:c8:4a label
5g b6:4b:d6:3d:c8:4a label + LA-Bit set + 4th oktet increased
The label MAC address is found in bdinfo 0xde00.
Signed-off-by: Felix Baumann <felix.bau@gmx.de>
[read wifi mac from flash offset]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 45cf200b2e22c34f2ae043b87e24230de526fefc)
-rw-r--r-- | target/linux/ramips/dts/mt7621_cudy_x6.dts | 29 | ||||
-rw-r--r-- | target/linux/ramips/image/mt7621.mk | 1 | ||||
-rw-r--r-- | target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac | 5 |
3 files changed, 19 insertions, 16 deletions
diff --git a/target/linux/ramips/dts/mt7621_cudy_x6.dts b/target/linux/ramips/dts/mt7621_cudy_x6.dts index ebb2149172..dc21964bd7 100644 --- a/target/linux/ramips/dts/mt7621_cudy_x6.dts +++ b/target/linux/ramips/dts/mt7621_cudy_x6.dts @@ -11,9 +11,9 @@ aliases { led-boot = &led_internet_blue; - led-failsafe = &led_internet_blue; + led-failsafe = &led_internet_red; led-running = &led_internet_blue; - led-upgrade = &led_internet_blue; + led-upgrade = &led_internet_red; label-mac-device = &gmac0; }; @@ -45,7 +45,7 @@ gpios = <&gpio 15 GPIO_ACTIVE_LOW>; }; - internet_red { + led_internet_red: internet_red { label = "red:internet"; gpios = <&gpio 16 GPIO_ACTIVE_LOW>; }; @@ -102,10 +102,18 @@ read-only; }; - bdinfo: partition@1ff0000 { + partition@1ff0000 { label = "bdinfo"; reg = <0x1ff0000 0x10000>; read-only; + + compatible = "nvmem-cells"; + #address-cells = <1>; + #size-cells = <1>; + + macaddr_bdinfo_de00: macaddr@de00 { + reg = <0xde00 0x6>; + }; }; }; }; @@ -120,6 +128,9 @@ compatible = "mediatek,mt76"; reg = <0x0000 0 0 0 0>; mediatek,mtd-eeprom = <&factory 0x0000>; + + nvmem-cells = <&macaddr_bdinfo_de00>; + nvmem-cell-names = "mac-address"; }; }; @@ -166,13 +177,3 @@ function = "gpio"; }; }; - -&bdinfo { - compatible = "nvmem-cells"; - #address-cells = <1>; - #size-cells = <1>; - - macaddr_bdinfo_de00: macaddr@de00 { - reg = <0xde00 0x6>; - }; -}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 9c451c26bf..3bf9fd3eda 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -352,6 +352,7 @@ define Device/cudy_x6 DEVICE_MODEL := X6 UIMAGE_NAME := R13 DEVICE_PACKAGES := kmod-mt7915e + SUPPORTED_DEVICES += R13 endef TARGET_DEVICES += cudy_x6 diff --git a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index d8c9512bb7..b4d7542179 100644 --- a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -19,8 +19,9 @@ case "$board" in [ "$PHYNBR" = "1" ] && macaddr_setbit_la $hw_mac_addr > /sys${DEVPATH}/macaddress ;; cudy,x6) - hw_mac_addr="$(mtd_get_mac_binary factory 0x4)" - macaddr_add $hw_mac_addr "$PHYNBR" > /sys${DEVPATH}/macaddress + hw_mac_addr="$(mtd_get_mac_binary bdinfo 0xde00)" + [ "$PHYNBR" = "1" ] && \ + macaddr_setbit_la "$(macaddr_add $hw_mac_addr 0x100000)" > /sys${DEVPATH}/macaddress ;; dlink,dap-x1860-a1) hw_mac_addr="$(mtd_get_mac_binary factory 0x4)" |