#!/bin/sh . /lib/functions/uci-defaults.sh . /lib/functions.sh . /lib/functions/system.sh ipq53xx_setup_interfaces() { local board="$1" case "$board" in qcom,ipq9574-ap-al02-c4) ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4 eth5" "eth0" ;; cig,wf189|\ cig,wf672|\ edgecore,eap105|\ sercomm,ap72tip|\ sonicfi,rap750w-311a) ucidef_set_interfaces_lan_wan "eth1" "eth0" ;; sonicfi,rap7110c-341x|\ sonicfi,rap750e-h|\ sonicfi,rap750e-s) ucidef_set_interfaces_lan_wan "" "eth0" ;; cig,wf189w) ucidef_set_interfaces_lan_wan "eth1" "eth0" ucidef_add_switch "switch1" "0u@eth1" "3:lan" "2:lan" "1:lan" ;; cig,wf189h) ucidef_set_interfaces_lan_wan "eth1" "eth0" ucidef_add_switch "switch1" "0u@eth1" "3:lan" "2:lan" ;; sercomm,ap72tip-v4) ucidef_set_interface_wan "eth0" ;; zyxel,nwa130be) ucidef_set_interfaces_lan_wan "eth1" "eth0" ;; esac } qcom_setup_macs() { local board="$1" case $board in cig,wf189w|\ cig,wf189h|\ cig,wf189) mtd=$(find_mtd_chardev "0:APPSBLENV") [ -z "$mtd" ] && return; mac=$(grep eth1addr= $mtd | cut -d= -f2) [ -z "$mac" ] && return; wan_mac=$(macaddr_canonicalize $mac) lan_mac=$(macaddr_add "$wan_mac" 1) ucidef_set_network_device_mac eth0 $wan_mac ucidef_set_network_device_mac eth1 $lan_mac ucidef_set_label_macaddr $wan_mac ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) ;; cig,wf672) mmc=$(find_mmc_part "0:APPSBLENV") [ -z "$mmc" ] && return; mac=$(grep eth1addr= $mmc | cut -d= -f2) [ -z "$mac" ] && return; wan_mac=$(macaddr_canonicalize $mac) lan_mac=$(macaddr_add "$wan_mac" 1) ucidef_set_network_device_mac eth0 $wan_mac ucidef_set_network_device_mac eth1 $lan_mac ucidef_set_label_macaddr $wan_mac ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) ;; sercomm,ap72tip) wan_mac=$(cat /sys/class/net/eth0/address) lan_mac=$(cat /sys/class/net/eth1/address) ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) ;; edgecore,eap105) wan_mac=$(cat /sys/class/net/eth0/address) lan_mac=$(macaddr_add "$wan_mac" 1) ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) ;; sonicfi,rap7110c-341x|\ sonicfi,rap750e-h|\ sonicfi,rap750e-s) wan_mac=$(cat /sys/class/net/eth0/address) ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 1) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 2) [ "$board" = "sonicfi,rap7110c-341x" ] && ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 3) ;; sonicfi,rap750w-311a) wan_mac=$(cat /sys/class/net/eth0/address) lan_mac=$(macaddr_add "$wan_mac" 1) ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ;; sercomm,ap72tip-v4) wan_mac=$(cat /sys/class/net/eth0/address) ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 1) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 3) ;; zyxel,nwa130be) wan_mac=$(cat /proc/cmdline) wan_mac="${wan_mac##*hwaddr=}" wan_mac="${wan_mac%% *}" wan_mac="$(echo ${wan_mac} | sed 's/\(..\)/\1:/g;s/:$//')" lan_mac=$(macaddr_add "$wan_mac" 1) ucidef_set_network_device_mac eth0 $wan_mac ucidef_set_network_device_mac eth1 $lan_mac ucidef_set_label_macaddr $wan_mac ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) ;; *) wan_mac=$(cat /sys/class/net/eth1/address) lan_mac=$(macaddr_add "$wan_mac" 1) ;; esac [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac [ -n "$wan_mac" ] && ucidef_set_label_macaddr "$wan_mac" } board_config_update board=$(board_name) ipq53xx_setup_interfaces $board qcom_setup_macs $board board_config_flush exit 0