. /lib/functions/uci-defaults.sh
. /lib/functions/system.sh
-rtl838x_setup_switch()
-{
- local lan lan_list
-
- for lan in /sys/class/net/lan*; do
- lan_list="$lan_list $(basename $lan)"
- done
- ucidef_set_bridge_device switch
- ucidef_set_interface_lan "$lan_list"
+ucidef_set_poe() {
+ json_select_object poe
+ json_add_string "budget" "$1"
+ json_select_array ports
+ for port in $2; do
+ json_add_string "" "$port"
+ done
+ json_select ..
+ json_select ..
}
-rtl838x_setup_macs()
-{
- local board="$1"
- local lan_mac
- local wan_mac
- local label_mac
-
- case $board in
- allnet,all-sg8208m|\
- netgear,gs110tpp-v1)
- lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
- label_mac=$lan_mac
- 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)
-rtl838x_setup_switch
-rtl838x_setup_macs $board
+board_config_update
+
+lan_list=""
+for lan in /sys/class/net/lan*; do
+ lan_list="$lan_list $(basename $lan)"
+done
+ucidef_set_bridge_device switch
+ucidef_set_interface_wan "$lan_list"
+ucidef_set_interface "lan" ifname "lan1:t" protocol "static" vlan 100
+
+lan_mac=""
+wan_mac=""
+label_mac=""
+case $board in
+*)
+ wan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
+ label_mac=$lan_mac
+ ;;
+esac
+
+lan_mac=$(macaddr_setbit_la $wan_mac)
+
+ucidef_set_interface_macaddr "lan" $lan_mac
+ucidef_set_interface_macaddr "wan" $wan_mac
+ucidef_set_bridge_mac "$wan_mac"
+ucidef_set_network_device_mac eth0 $wan_mac
+for lan in $lan_list; do
+ ucidef_set_network_device_mac $lan $lan_mac
+ lan_mac=$(macaddr_add $lan_mac 1)
+done
+[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
+
+case $board in
+netgear,gs110tpp-v1)
+ ucidef_set_poe 130 "$lan_list"
+ ;;
+esac
+
board_config_flush
exit 0