mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
realtek: use full range of assigned MAC addresses
Some devices are assigned globally unique MAC addresses for all ports. These are stored by U-Boot in the second U-Boot enviroment ("sysinfo") as a range of start and end address. Use the full range if provided. Signed-off-by: Bjørn Mork <bjorn@mork.no>
This commit is contained in:
parent
9e7149f729
commit
d1464afe1b
@ -25,11 +25,14 @@ ucidef_set_bridge_device switch
|
||||
ucidef_set_interface_lan "$lan_list"
|
||||
|
||||
lan_mac=""
|
||||
lan_mac_end=""
|
||||
label_mac=""
|
||||
case $board in
|
||||
*)
|
||||
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
||||
label_mac=$lan_mac
|
||||
lan_mac=$(mtd_get_mac_ascii u-boot-env2 mac_start)
|
||||
lan_mac_end=$(mtd_get_mac_ascii u-boot-env2 mac_end)
|
||||
label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
||||
[ -z "$lan_mac" ] && lan_mac=$label_mac
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -38,7 +41,7 @@ ucidef_set_bridge_mac "$lan_mac"
|
||||
ucidef_set_network_device_mac eth0 $lan_mac
|
||||
for lan in $lan_list; do
|
||||
ucidef_set_network_device_mac $lan $lan_mac
|
||||
lan_mac=$(macaddr_setbit_la $lan_mac)
|
||||
[ -z "$lan_mac_end" ] || [ "$lan_mac" == "$lan_mac_end" ] && lan_mac=$(macaddr_setbit_la $lan_mac)
|
||||
lan_mac=$(macaddr_add $lan_mac 1)
|
||||
done
|
||||
[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
|
||||
|
Loading…
Reference in New Issue
Block a user