02_network 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. . /lib/functions.sh
  2. . /lib/functions/uci-defaults.sh
  3. . /lib/functions/system.sh
  4. mediatek_setup_interfaces()
  5. {
  6. local board="$1"
  7. case $board in
  8. buffalo,wsr-2533dhp2)
  9. ucidef_add_switch "switch0" \
  10. "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
  11. ;;
  12. dlink,eagle-pro-ai-m32-a1)
  13. ucidef_set_interfaces_lan_wan "lan1 lan2" wan
  14. ;;
  15. elecom,wrc-2533gent|\
  16. totolink,a8000ru)
  17. ucidef_add_switch "switch0" \
  18. "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6u@eth0" "5u@eth1"
  19. ;;
  20. smartrg,sdg-841-t6)
  21. ucidef_set_interfaces_lan_wan lan wan
  22. ;;
  23. ubnt,unifi-6-lr*)
  24. ucidef_set_interface_lan "eth0"
  25. ;;
  26. xiaomi,redmi-router-ax6s)
  27. ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" wan
  28. ;;
  29. *)
  30. ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" wan
  31. ;;
  32. esac
  33. }
  34. DEV_PATH_WMAC=platform/18000000.wmac
  35. DEV_PATH_PCIE0=1a143000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0
  36. DEV_PATH_PCIE1=1a145000.pcie/pci0001:00/0001:00:01.0/0001:01:00.0
  37. mediatek_setup_wlan()
  38. {
  39. dt_is_enabled wmac@18000000 && ucidef_add_wlan $DEV_PATH_WMAC
  40. dt_is_enabled pcie@1a143000 && ucidef_add_wlan $DEV_PATH_PCIE0
  41. dt_is_enabled pcie@1a145000 && ucidef_add_wlan $DEV_PATH_PCIE1
  42. }
  43. mediatek_setup_macs()
  44. {
  45. local board="$1"
  46. local lan_mac=""
  47. local wan_mac=""
  48. local label_mac=""
  49. case $board in
  50. buffalo,wsr-3200ax4s)
  51. lan_mac=$(mtd_get_mac_ascii board_data "mac")
  52. wan_mac=$lan_mac
  53. label_mac=$lan_mac
  54. ;;
  55. reyee,ax3200-e5|\
  56. ruijie,rg-ew3200gx-pro)
  57. lan_mac=$(macaddr_add $(get_mac_label) 1)
  58. ;;
  59. xiaomi,redmi-router-ax6s)
  60. wan_mac=$(mtd_get_mac_ascii bdata ethaddr_wan)
  61. label_mac=$wan_mac
  62. ;;
  63. esac
  64. [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
  65. [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
  66. [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
  67. }
  68. board_config_update
  69. board=$(board_name)
  70. mediatek_setup_interfaces $board
  71. mediatek_setup_macs $board
  72. mediatek_setup_wlan $board
  73. board_config_flush
  74. exit 0