aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThibaut VARÈNE <hacks@slashdirt.org>2020-04-20 14:35:57 +0200
committerKoen Vandeputte <koen.vandeputte@ncentric.com>2020-05-08 15:17:18 +0200
commit5e50515fa6b3e2ddfd7ffb478b2111dc589dfd4e (patch)
treedd99f834a399d7d361dfbe927678c237288fb4ce
parent9242d691ec847e20b68a2dcfca3ae3a7f6674be2 (diff)
downloadupstream-5e50515fa6b3e2ddfd7ffb478b2111dc589dfd4e.tar.gz
upstream-5e50515fa6b3e2ddfd7ffb478b2111dc589dfd4e.tar.bz2
upstream-5e50515fa6b3e2ddfd7ffb478b2111dc589dfd4e.zip
ramips/mt7621: mikrotik: don't use mtd-mac-address in DTS
As evidenced here[1] the device MAC address can be stored at a random offset in the hard_config partition. Rely on sysfs to update the MAC address correctly. Adjust config so that WAN is base MAC and LAN is base MAC +1 to better match label and vendor OS. [1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610809021 Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
-rw-r--r--target/linux/ramips/dts/mt7621_mikrotik_routerboard-750gr3.dts12
-rw-r--r--target/linux/ramips/dts/mt7621_mikrotik_routerboard-m11g.dts5
-rw-r--r--target/linux/ramips/dts/mt7621_mikrotik_routerboard-m33g.dts7
-rwxr-xr-xtarget/linux/ramips/mt7621/base-files/etc/board.d/02_network5
4 files changed, 4 insertions, 25 deletions
diff --git a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-750gr3.dts b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-750gr3.dts
index a075d08556..018e83664d 100644
--- a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-750gr3.dts
+++ b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-750gr3.dts
@@ -126,10 +126,6 @@
};
};
-&gmac0 {
- mtd-mac-address = <&hard_config 0x0010>;
-};
-
&switch0 {
ports {
port@0 {
@@ -140,29 +136,21 @@
port@1 {
status = "okay";
label = "lan2";
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <1>;
};
port@2 {
status = "okay";
label = "lan3";
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <2>;
};
port@3 {
status = "okay";
label = "lan4";
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <3>;
};
port@4 {
status = "okay";
label = "lan5";
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <4>;
};
};
};
diff --git a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m11g.dts b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m11g.dts
index 128b8a2816..d7c4a45798 100644
--- a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m11g.dts
+++ b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m11g.dts
@@ -134,11 +134,6 @@
};
};
-&gmac0 {
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <1>;
-};
-
&switch0 {
ports {
port@0 {
diff --git a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m33g.dts b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m33g.dts
index aff2d0e64f..30bb36a77f 100644
--- a/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m33g.dts
+++ b/target/linux/ramips/dts/mt7621_mikrotik_routerboard-m33g.dts
@@ -158,18 +158,11 @@
};
};
-&gmac0 {
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <1>;
-};
-
&switch0 {
ports {
port@0 {
status = "okay";
label = "wan";
- mtd-mac-address = <&hard_config 0x0010>;
- mtd-mac-address-increment = <2>;
};
port@1 {
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
index 43db9c6f64..34be067085 100755
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
@@ -91,9 +91,12 @@ ramips_setup_macs()
wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
label_mac=$wan_mac
;;
+ mikrotik,routerboard-750gr3|\
mikrotik,routerboard-m11g|\
mikrotik,routerboard-m33g)
- label_mac=$(mtd_get_mac_binary hard_config 0x10)
+ label_mac=$(cat "/sys/firmware/mikrotik/hard_config/mac_base")
+ wan_mac=$label_mac
+ lan_mac=$(macaddr_add $label_mac 1)
;;
zbtlink,zbt-we1326|\
zbtlink,zbt-wg3526-16m|\