kirkwood: rework 02_network

Just like other targets do, introduce two setup functions for interfaces
and MAC addresses.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
This commit is contained in:
Sungbo Eo 2022-01-22 20:30:05 +09:00
parent aaebc7aa2e
commit 0c568d044f

View file

@ -5,51 +5,76 @@
. /lib/functions/uci-defaults.sh . /lib/functions/uci-defaults.sh
. /lib/functions/system.sh . /lib/functions/system.sh
board_config_update kirkwood_setup_interfaces()
{
local board="$1"
board=$(board_name) case "$board" in
checkpoint,l-50)
case "$board" in
checkpoint,l-50)
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6 lan7 lan8 dmz" "eth0" ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6 lan7 lan8 dmz" "eth0"
;; ;;
cisco,on100) cisco,on100)
ucidef_set_interface_lan "eth0 eth1" ucidef_set_interface_lan "eth0 eth1"
;; ;;
cloudengines,pogoe02|\ cloudengines,pogoe02|\
cloudengines,pogoplugv4|\ cloudengines,pogoplugv4|\
ctera,c200-v1|\ ctera,c200-v1|\
globalscale,sheevaplug|\ globalscale,sheevaplug|\
iom,iconnect-1.1|\ iom,iconnect-1.1|\
iom,ix2-200|\ iom,ix2-200|\
netgear,readynas-duo-v2|\ netgear,readynas-duo-v2|\
raidsonic,ib-nas62x0|\ raidsonic,ib-nas62x0|\
seagate,blackarmor-nas220|\ seagate,blackarmor-nas220|\
seagate,dockstar|\ seagate,dockstar|\
seagate,goflexhome|\ seagate,goflexhome|\
seagate,goflexnet|\ seagate,goflexnet|\
zyxel,nsa310s) zyxel,nsa310b|\
zyxel,nsa310s|\
zyxel,nsa325)
ucidef_set_interface_lan "eth0" "dhcp" ucidef_set_interface_lan "eth0" "dhcp"
;; ;;
endian,4i-edge-200) endian,4i-edge-200)
ucidef_set_interface_lan "port1 port2 port3 port4 eth1" ucidef_set_interface_lan "port1 port2 port3 port4 eth1"
;; ;;
linksys,e4200-v2|\ linksys,e4200-v2|\
linksys,ea3500|\ linksys,ea3500|\
linksys,ea4500) linksys,ea4500)
ucidef_set_interfaces_lan_wan "ethernet1 ethernet2 ethernet3 ethernet4" "internet" ucidef_set_interfaces_lan_wan "ethernet1 ethernet2 ethernet3 ethernet4" "internet"
ucidef_set_interface_macaddr "wan" $( mtd_get_mac_ascii u_env eth1addr )
;; ;;
zyxel,nsa310b|\ *)
zyxel,nsa325)
ucidef_set_interface_lan "eth0" "dhcp"
ucidef_set_interface_macaddr "lan" $( mtd_get_mac_ascii uboot_env ethaddr )
;;
*)
ucidef_set_interface_lan "eth0" ucidef_set_interface_lan "eth0"
;; ;;
esac esac
}
kirkwood_setup_macs()
{
local board="$1"
local lan_mac=""
local wan_mac=""
local label_mac=""
case "$board" in
linksys,e4200-v2|\
linksys,ea3500|\
linksys,ea4500)
wan_mac=$(mtd_get_mac_ascii u_env eth1addr)
;;
zyxel,nsa310b|\
zyxel,nsa325)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
;;
esac
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
}
board_config_update
board=$(board_name)
kirkwood_setup_interfaces $board
kirkwood_setup_macs $board
board_config_flush board_config_flush
exit 0 exit 0