02_network 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. . /lib/functions/system.sh
  2. . /lib/functions/uci-defaults.sh
  3. ath79_setup_interfaces()
  4. {
  5. local board="$1"
  6. case "$board" in
  7. buffalo,whr-g301n)
  8. ucidef_set_interface_wan "eth0"
  9. ucidef_add_switch "switch0" \
  10. "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
  11. ;;
  12. dlink,dir-615-e4|\
  13. netgear,wnr1000-v2|\
  14. netgear,wnr2000-v3|\
  15. netgear,wnr612-v2|\
  16. on,n150r|\
  17. tplink,tl-wr740n-v1|\
  18. tplink,tl-wr740n-v3|\
  19. tplink,tl-wr741-v1|\
  20. tplink,tl-wr743nd-v1|\
  21. tplink,tl-wr841-v5|\
  22. tplink,tl-wr941-v4)
  23. ucidef_set_interface_wan "eth0"
  24. ucidef_add_switch "switch0" \
  25. "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
  26. ;;
  27. engenius,eap350-v1|\
  28. engenius,ecb350-v1|\
  29. pqi,air-pen|\
  30. tplink,tl-mr10u|\
  31. tplink,tl-mr3020-v1|\
  32. tplink,tl-mr3040-v2|\
  33. tplink,tl-wa701nd-v1|\
  34. tplink,tl-wa730re-v1|\
  35. tplink,tl-wa801nd-v1|\
  36. tplink,tl-wa801nd-v3|\
  37. tplink,tl-wa801nd-v4|\
  38. tplink,tl-wa830re-v1|\
  39. tplink,tl-wa850re-v1|\
  40. tplink,tl-wa850re-v2|\
  41. tplink,tl-wa860re-v1|\
  42. tplink,tl-wa901nd-v1|\
  43. tplink,tl-wa901nd-v2|\
  44. tplink,tl-wa901nd-v3|\
  45. tplink,tl-wa901nd-v4|\
  46. tplink,tl-wa901nd-v5|\
  47. tplink,tl-wr703n|\
  48. tplink,tl-wr802n-v1|\
  49. tplink,tl-wr802n-v2)
  50. ucidef_set_interface_lan "eth0"
  51. ;;
  52. engenius,enh202-v1)
  53. ucidef_set_interface_lan "eth0"
  54. ucidef_add_switch "switch0" \
  55. "0@eth1" "4:lan:1"
  56. ;;
  57. tplink,tl-mr3220-v1|\
  58. tplink,tl-mr3420-v1|\
  59. tplink,tl-mr3420-v3|\
  60. tplink,tl-wr841-v7|\
  61. tplink,tl-wr841-v9|\
  62. tplink,tl-wr841-v10|\
  63. tplink,tl-wr841-v11|\
  64. tplink,tl-wr841-v12|\
  65. tplink,tl-wr940n-v3|\
  66. tplink,tl-wr940n-v4|\
  67. tplink,tl-wr940n-v6|\
  68. tplink,tl-wr941nd-v6)
  69. ucidef_set_interface_wan "eth1"
  70. ucidef_add_switch "switch0" \
  71. "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
  72. ;;
  73. tplink,tl-mr3420-v2|\
  74. tplink,tl-wr740n-v4|\
  75. tplink,tl-wr740n-v5|\
  76. tplink,tl-wr741nd-v4|\
  77. tplink,tl-wr841-v8)
  78. ucidef_set_interface_wan "eth1"
  79. ucidef_add_switch "switch0" \
  80. "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
  81. ;;
  82. tplink,tl-wr941-v2)
  83. ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
  84. ;;
  85. tplink,tl-wr941n-v7-cn)
  86. ucidef_add_switch "switch0" \
  87. "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
  88. ;;
  89. *)
  90. ucidef_set_interfaces_lan_wan "eth0" "eth1"
  91. ;;
  92. esac
  93. }
  94. ath79_setup_macs()
  95. {
  96. local board="$1"
  97. case "$board" in
  98. dlink,dir-615-e4)
  99. lan_mac=$(mtd_get_mac_ascii "nvram" "lan_mac")
  100. wan_mac=$(mtd_get_mac_ascii "nvram" "wan_mac")
  101. label_mac=$wan_mac
  102. ;;
  103. engenius,enh202-v1)
  104. label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
  105. ;;
  106. tplink,tl-wr941-v2|\
  107. tplink,tl-wr941n-v7-cn)
  108. base_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
  109. wan_mac=$(macaddr_add "$base_mac" 1)
  110. ;;
  111. esac
  112. [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
  113. [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
  114. [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
  115. }
  116. board_config_update
  117. board=$(board_name)
  118. ath79_setup_interfaces $board
  119. ath79_setup_macs $board
  120. board_config_flush
  121. exit 0