02_network 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #
  2. # Copyright (c) 2015 The Linux Foundation. All rights reserved.
  3. # Copyright (c) 2011-2015 OpenWrt.org
  4. #
  5. . /lib/functions/uci-defaults.sh
  6. . /lib/functions/system.sh
  7. ipq806x_setup_interfaces()
  8. {
  9. local board="$1"
  10. case "$board" in
  11. arris,tr4400-v2)
  12. ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "eth2"
  13. ;;
  14. askey,rt4230w-rev6 |\
  15. asrock,g10 |\
  16. nec,wg2600hp |\
  17. buffalo,wxr-2533dhp |\
  18. compex,wpq864 |\
  19. netgear,d7800 |\
  20. netgear,r7500 |\
  21. netgear,r7500v2 |\
  22. qcom,ipq8064-ap148 |\
  23. linksys,e8350-v1 |\
  24. linksys,ea7500-v1 |\
  25. linksys,ea8500 |\
  26. nec,wg2600hp3 |\
  27. netgear,r7800 |\
  28. netgear,xr500 |\
  29. netgear,xr450 |\
  30. tplink,c2600 |\
  31. tplink,vr2600v |\
  32. tplink,ad7200 |\
  33. zyxel,nbg6817)
  34. ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
  35. ucidef_set_network_device_conduit "lan1" "eth1"
  36. ucidef_set_network_device_conduit "lan2" "eth1"
  37. ucidef_set_network_device_conduit "lan3" "eth1"
  38. ucidef_set_network_device_conduit "lan4" "eth1"
  39. ucidef_set_network_device_conduit "wan" "eth0"
  40. ;;
  41. asus,onhub |\
  42. tplink,onhub)
  43. ucidef_set_interfaces_lan_wan "lan1" "wan"
  44. ucidef_set_network_device_conduit "lan1" "eth1"
  45. ucidef_set_network_device_conduit "wan" "eth0"
  46. ;;
  47. edgecore,ecw5410)
  48. ucidef_set_interfaces_lan_wan "eth1" "eth0"
  49. ;;
  50. qcom,ipq8064-ap161)
  51. ucidef_set_interface_lan "eth1 eth2 lan1 lan2 lan3 lan4" "wan"
  52. ;;
  53. qcom,ipq8064-db149)
  54. ucidef_set_interface_lan "eth1 eth2 eth3 lan1 lan2 lan3 lan4" "wan"
  55. ;;
  56. fortinet,fap-421e |\
  57. ubnt,unifi-ac-hd)
  58. ucidef_set_interface_lan "eth0 eth1"
  59. ;;
  60. meraki,mr42)
  61. ucidef_set_interface_lan "eth0"
  62. ;;
  63. extreme,ap3935 |\
  64. meraki,mr52)
  65. ucidef_set_interfaces_lan_wan "eth0" "eth1"
  66. ;;
  67. *)
  68. echo "Unsupported hardware. Network interfaces not intialized"
  69. ;;
  70. esac
  71. }
  72. ipq806x_setup_macs()
  73. {
  74. local board="$1"
  75. case "$board" in
  76. linksys,ea7500-v1)
  77. hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr)
  78. ucidef_set_interface_macaddr "lan" "$hw_mac_addr"
  79. ucidef_set_interface_macaddr "wan" "$hw_mac_addr"
  80. ;;
  81. linksys,ea8500)
  82. hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr)
  83. ucidef_set_interface_macaddr "lan" "$hw_mac_addr"
  84. ucidef_set_interface_macaddr "wan" "$hw_mac_addr"
  85. ;;
  86. linksys,e8350-v1 |\
  87. zyxel,nbg6817)
  88. hw_mac_addr=$(mtd_get_mac_ascii 0:appsblenv ethaddr)
  89. ucidef_set_interface_macaddr "lan" "$(macaddr_add $hw_mac_addr 2)"
  90. ucidef_set_interface_macaddr "wan" "$(macaddr_add $hw_mac_addr 3)"
  91. ;;
  92. asrock,g10)
  93. hw_mac_addr=$(mtd_get_mac_ascii hwconfig HW.LAN.MAC.Address)
  94. ucidef_set_interface_macaddr "lan" "$hw_mac_addr"
  95. hw_mac_addr=$(mtd_get_mac_ascii hwconfig HW.WAN.MAC.Address)
  96. ucidef_set_interface_macaddr "wan" "$hw_mac_addr"
  97. ;;
  98. esac
  99. }
  100. board_config_update
  101. board=$(board_name)
  102. ipq806x_setup_macs $board
  103. ipq806x_setup_interfaces $board
  104. board_config_flush
  105. exit 0