ath79: Refresh kernel patches
[openwrt/openwrt.git] / target / linux / realtek / base-files / etc / board.d / 02_network
index 5356bcac65d078bac2a140dd3d35f502b90f2ef2..5073dbcc31e90b81f0a4672bcb9b9221d9379084 100644 (file)
@@ -3,21 +3,26 @@
 . /lib/functions/uci-defaults.sh
 . /lib/functions/system.sh
 
 . /lib/functions/uci-defaults.sh
 . /lib/functions/system.sh
 
-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 ..
+_filter_port_list_ordered() {
+       local ports="$1"
+       local excluded="$2"
+       local sort_opts="$3"
+       echo $ports $excluded | xargs -n1 basename | sort -V $sort_opts | uniq -u | xargs
+}
+
+filter_port_list() {
+       _filter_port_list_ordered "$1" "$2"
+}
+
+filter_port_list_reverse() {
+       _filter_port_list_ordered "$1" "$2" "-r"
 }
 
 board=$(board_name)
 board_config_update
 
 lan_list=$(ls -1 -v -d /sys/class/net/lan* | xargs -n1 basename | xargs)
 }
 
 board=$(board_name)
 board_config_update
 
 lan_list=$(ls -1 -v -d /sys/class/net/lan* | xargs -n1 basename | xargs)
+
 ucidef_set_bridge_device switch
 ucidef_set_interface_lan "$lan_list"
 
 ucidef_set_bridge_device switch
 ucidef_set_interface_lan "$lan_list"
 
@@ -27,8 +32,12 @@ lan_mac_end=""
 label_mac=""
 case $board in
 hpe,1920-8g|\
 label_mac=""
 case $board in
 hpe,1920-8g|\
+hpe,1920-8g-poe-65w|\
+hpe,1920-8g-poe-180w|\
 hpe,1920-16g|\
 hpe,1920-16g|\
-hpe,1920-24g)
+hpe,1920-24g|\
+hpe,1920-48g|\
+hpe,1920-48g-poe)
        label_mac=$(mtd_get_mac_binary factory 0x68)
        lan_mac=$label_mac
        mac_count1=$(hexdump -v -n 4 -s 0x110 -e '4 "%d"' $(find_mtd_part factory) 2>/dev/null)
        label_mac=$(mtd_get_mac_binary factory 0x68)
        lan_mac=$label_mac
        mac_count1=$(hexdump -v -n 4 -s 0x110 -e '4 "%d"' $(find_mtd_part factory) 2>/dev/null)
@@ -36,6 +45,13 @@ hpe,1920-24g)
        lan_mac_start=$(macaddr_add $lan_mac 2)
        lan_mac_end=$(macaddr_add $lan_mac $((mac_count2-mac_count1)))
        ;;
        lan_mac_start=$(macaddr_add $lan_mac 2)
        lan_mac_end=$(macaddr_add $lan_mac $((mac_count2-mac_count1)))
        ;;
+tplink,sg2008p-v1|\
+tplink,sg2210p-v3|\
+tplink,sg2452p-v4|\
+tplink,t1600g-28ts-v3)
+       label_mac=$(get_mac_label)
+       lan_mac="$label_mac"
+       ;;
 *)
        lan_mac=$(mtd_get_mac_ascii u-boot-env2 mac_start)
        lan_mac_end=$(mtd_get_mac_ascii u-boot-env2 mac_end)
 *)
        lan_mac=$(mtd_get_mac_ascii u-boot-env2 mac_start)
        lan_mac_end=$(mtd_get_mac_ascii u-boot-env2 mac_end)
@@ -56,22 +72,56 @@ done
 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
 
 case $board in
 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
 
 case $board in
+d-link,dgs-1210-10mp-f)
+       ucidef_set_poe 130 "$(filter_port_list "$lan_list" "lan9 lan10")"
+       ;;
+d-link,dgs-1210-10p)
+       ucidef_set_poe 65 "$(filter_port_list "$lan_list" "lan9 lan10")"
+       ;;
+d-link,dgs-1210-28mp-f)
+       ucidef_set_poe 370 "lan8 lan7 lan6 lan5 lan4 lan3 lan2 lan1 lan16 lan15 lan14 lan13 lan12 lan11 lan10 lan9 lan24 lan23
+                       lan22 lan21 lan20 lan19 lan18 lan17"
+       ;;
+d-link,dgs-1210-28p-f)
+       ucidef_set_poe 193 "lan8 lan7 lan6 lan5 lan4 lan3 lan2 lan1 lan16 lan15 lan14 lan13 lan12 lan11 lan10 lan9 lan24 lan23
+                       lan22 lan21 lan20 lan19 lan18 lan17"
+       ;;
+engenius,ews2910p)
+       ucidef_set_poe 60 "$(filter_port_list "$lan_list" "lan9 lan10")"
+       ;;
+hpe,1920-8g-poe-65w)
+       ucidef_set_poe 65 "$(filter_port_list_reverse "$lan_list" "lan9 lan10")"
+       ;;
+hpe,1920-8g-poe-180w)
+       ucidef_set_poe 180 "$(filter_port_list_reverse "$lan_list" "lan9 lan10")"
+       ;;
+hpe,1920-48g-poe)
+       ucidef_set_poe 370 "lan8 lan7 lan6 lan5 lan4 lan3 lan2 lan1 lan16 lan15 lan14 lan13 lan12 lan11 lan10 lan9 lan24 lan23
+                       lan22 lan21 lan20 lan19 lan18 lan17 lan32 lan31 lan30 lan29 lan28 lan27 lan26 lan25 lan40 lan39 lan38 lan37
+                       lan36 lan35 lan34 lan33 lan48 lan47 lan46 lan45 lan44 lan43 lan42 lan41"
+       ;;
 netgear,gs110tpp-v1)
 netgear,gs110tpp-v1)
-       ucidef_set_poe 130 "$lan_list"
+       ucidef_set_poe 130 "$(filter_port_list "$lan_list" "lan9 lan10")"
+       ;;
+netgear,gs110tup-v1)
+       ucidef_set_poe 240 "$(filter_port_list "$lan_list" "lan9 lan10")"
        ;;
 netgear,gs310tp-v1)
        ;;
 netgear,gs310tp-v1)
-       ucidef_set_poe 55 "$lan_list"
+       ucidef_set_poe 55 "$(filter_port_list "$lan_list" "lan9 lan10")"
        ;;
 zyxel,gs1900-10hp)
        ;;
 zyxel,gs1900-10hp)
-       ucidef_set_poe 77 "$lan_list"
+       ucidef_set_poe 77 "$(filter_port_list "$lan_list" "lan9 lan10")"
        ;;
 zyxel,gs1900-8hp-v1|\
 zyxel,gs1900-8hp-v2)
        ucidef_set_poe 70 "$lan_list"
        ;;
        ;;
 zyxel,gs1900-8hp-v1|\
 zyxel,gs1900-8hp-v2)
        ucidef_set_poe 70 "$lan_list"
        ;;
+zyxel,gs1900-24ep)
+       ucidef_set_poe 130 "lan1 lan2 lan3 lan4 lan5 lan6 lan7 lan8 lan9 lan10 lan11 lan12"
+       ;;
 zyxel,gs1900-24hp-v1|\
 zyxel,gs1900-24hp-v2)
 zyxel,gs1900-24hp-v1|\
 zyxel,gs1900-24hp-v2)
-       ucidef_set_poe 170 "$lan_list"
+       ucidef_set_poe 170 "$(filter_port_list "$lan_list" "lan25 lan26")"
        ;;
 esac
 
        ;;
 esac