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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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