ramips: clean and improve MAC address setup in 02_network

This patch removes unnecessary MAC address setup statements in
ramips' 02_network by doing several optimizations:

1. For the following devices, lan_mac was set up with
   mtd_get_mac_binary although the same address was set in DTS.
   The lan_mac statement is removed in 02_network, but
   wan_mac is kept:
   - mercury,mac1200r-v2
   - phicomm,k2g
   - skylab,skw92a
   - wiznet,wizfi630a

2. For the following devices, wan_mac was set up with
   mtd_get_mac_binary although the same address was set in DTS.
   The wan_mac statement is removed in 02_network, no
   lan_mac is present:
   - buffalo,whr-g300n
   - glinet,gl-mt300n-v2
   - zyxel,keenetic-start

3. For the following device, lan_mac and wan_mac were set up
   with mtd_get_mac_binary to the same address as set in DTS.
   Both statements are removed in 02_network:
   - buffalo,whr-600d

4. For some devices, it was possible to move setup from 02_network
   to DTS by introducing previously missing mtd_mac_address:
   - buffalo,whr-1166d
   - buffalo,whr-300hp2
   - buffalo,wsr-600dhp
   - ohyeah,oy-0001
   - planex,vr500

5. For one device, mtd_mac_address was just wrong and overwritten
   by 02_network. Put the correct value in DTS and remove redundant
   statement in 02_network:
   - asus,rt-ac57u

6. For one device, MAC address defined in DTS is exchanged together
   with lan_mac/wan_mac setup in 02_network, so that cases in
   02_network can be merged:
   - phicomm,k2p

For some devices, an empty case has to be used to prevent them
from falling into the default case and have
WAN address = eth0 address + 1 set to them.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
Adrian Schmutzler 2019-08-12 13:21:05 +02:00 committed by Chuanhong Guo
parent f11d90a76b
commit 6640e1c368
9 changed files with 30 additions and 31 deletions

View File

@ -513,7 +513,10 @@ ramips_setup_macs()
alfa-network,w502u|\ alfa-network,w502u|\
arcwireless,freestation5|\ arcwireless,freestation5|\
cudy,wr1000|\ cudy,wr1000|\
netgear,wnce2001) netgear,wnce2001|\
ohyeah,oy-0001|\
phicomm,k2g|\
skylab,skw92a)
wan_mac=$(mtd_get_mac_binary factory 0x2e) wan_mac=$(mtd_get_mac_binary factory 0x2e)
;; ;;
arcwireless,freestation5|\ arcwireless,freestation5|\
@ -535,9 +538,12 @@ ramips_setup_macs()
wan_mac=$(macaddr_add "$lan_mac" 1) wan_mac=$(macaddr_add "$lan_mac" 1)
;; ;;
asus,rt-ac57u|\ asus,rt-ac57u|\
elecom,wrc-1167ghbk2-s|\
elecom,wrc-1900gst|\
elecom,wrc-2533gst|\
phicomm,k2p|\ phicomm,k2p|\
planex,vr500) planex,vr500|\
lan_mac=$(mtd_get_mac_binary factory 0xe000) samknows,whitebox-v8)
wan_mac=$(mtd_get_mac_binary factory 0xe006) wan_mac=$(mtd_get_mac_binary factory 0xe006)
;; ;;
asus,rt-n56u) asus,rt-n56u)
@ -557,13 +563,11 @@ ramips_setup_macs()
buffalo,whr-1166d|\ buffalo,whr-1166d|\
buffalo,whr-300hp2|\ buffalo,whr-300hp2|\
buffalo,whr-600d|\ buffalo,whr-600d|\
buffalo,wsr-600dhp)
wan_mac=$(mtd_get_mac_binary factory 0x4)
lan_mac=$wan_mac
;;
buffalo,whr-g300n|\ buffalo,whr-g300n|\
glinet,gl-mt300n-v2) buffalo,wsr-600dhp|\
wan_mac=$(mtd_get_mac_binary factory 0x4) glinet,gl-mt300n-v2|\
zyxel,keenetic-start)
# This empty case has to be kept for devices without any MAC address adjustments
;; ;;
dlink,dch-m225|\ dlink,dch-m225|\
samsung,cy-swr1100) samsung,cy-swr1100)
@ -600,12 +604,6 @@ ramips_setup_macs()
netgear,r6850) netgear,r6850)
wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 2) wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 2)
;; ;;
elecom,wrc-1167ghbk2-s|\
elecom,wrc-1900gst|\
elecom,wrc-2533gst|\
samknows,whitebox-v8)
wan_mac=$(mtd_get_mac_binary factory 0xe006)
;;
hiwifi,hc5661|\ hiwifi,hc5661|\
hiwifi,hc5661a|\ hiwifi,hc5661a|\
hiwifi,hc5761|\ hiwifi,hc5761|\
@ -642,14 +640,7 @@ ramips_setup_macs()
lan_mac=$(mtd_get_mac_binary factory 0x2e) lan_mac=$(mtd_get_mac_binary factory 0x2e)
;; ;;
mercury,mac1200r-v2) mercury,mac1200r-v2)
lan_mac=$(mtd_get_mac_binary factory_info 0xd) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory_info 0xd)" 1)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
ohyeah,oy-0001|\
phicomm,k2g|\
skylab,skw92a)
lan_mac=$(mtd_get_mac_binary factory 0x28)
wan_mac=$(mtd_get_mac_binary factory 0x2e)
;; ;;
poray,m3|\ poray,m3|\
poray,m4-4m|\ poray,m4-4m|\
@ -662,9 +653,9 @@ ramips_setup_macs()
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x8004)" 2) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x8004)" 2)
;; ;;
sparklan,wcr-150gn|\ sparklan,wcr-150gn|\
wiznet,wizfi630a|\
zyxel,keenetic-omni|\ zyxel,keenetic-omni|\
zyxel,keenetic-omni-ii|\ zyxel,keenetic-omni-ii|\
zyxel,keenetic-start|\
zyxel,keenetic-viva) zyxel,keenetic-viva)
wan_mac=$(mtd_get_mac_binary factory 0x28) wan_mac=$(mtd_get_mac_binary factory 0x28)
;; ;;
@ -674,10 +665,6 @@ ramips_setup_macs()
trendnet,tew-691gr) trendnet,tew-691gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 3) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 3)
;; ;;
wiznet,wizfi630a)
lan_mac=$(mtd_get_mac_binary factory 0x4)
wan_mac=$(mtd_get_mac_binary factory 0x28)
;;
xiaomi,mir3g|\ xiaomi,mir3g|\
xiaomi,mir3p) xiaomi,mir3p)
lan_mac=$(mtd_get_mac_binary factory 0xe006) lan_mac=$(mtd_get_mac_binary factory 0xe006)

View File

@ -144,6 +144,8 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&rgmii1_pins &mdio_pins>; pinctrl-0 = <&rgmii1_pins &mdio_pins>;
mtd-mac-address = <&factory 0x4>;
port@5 { port@5 {
status = "okay"; status = "okay";
phy-handle = <&phy5>; phy-handle = <&phy5>;

View File

@ -143,6 +143,7 @@
&ethernet { &ethernet {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ephy_pins>; pinctrl-0 = <&ephy_pins>;
mtd-mac-address = <&factory 0x4>;
mediatek,portmap = "llllw"; mediatek,portmap = "llllw";
}; };

View File

@ -106,6 +106,7 @@
&ethernet { &ethernet {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ephy_pins>; pinctrl-0 = <&ephy_pins>;
mtd-mac-address = <&factory 0x28>;
mediatek,portmap = "llllw"; mediatek,portmap = "llllw";
}; };

View File

@ -135,7 +135,7 @@
}; };
&ethernet { &ethernet {
mtd-mac-address = <&factory 0x4e000>; mtd-mac-address = <&factory 0xe000>;
}; };
&pinctrl { &pinctrl {

View File

@ -181,6 +181,10 @@
}; };
}; };
&ethernet {
mtd-mac-address = <&factory 0x4>;
};
&xhci { &xhci {
status = "disabled"; status = "disabled";
}; };

View File

@ -107,7 +107,7 @@
}; };
&ethernet { &ethernet {
mtd-mac-address = <&factory 0x00000004>; mtd-mac-address = <&factory 0x4>;
}; };
&pinctrl { &pinctrl {

View File

@ -109,7 +109,7 @@
}; };
&ethernet { &ethernet {
mtd-mac-address = <&factory 0xe006>; mtd-mac-address = <&factory 0xe000>;
}; };
&pinctrl { &pinctrl {

View File

@ -81,6 +81,10 @@
}; };
}; };
&ethernet {
mtd-mac-address = <&factory 0xe000>;
};
&pinctrl { &pinctrl {
state_default: pinctrl0 { state_default: pinctrl0 {
gpio { gpio {