Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2022
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.17 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. . /lib/functions.sh
  4. . /lib/functions/uci-defaults.sh
  5. . /lib/functions/system.sh
  6.  
  7. ramips_setup_interfaces()
  8. {
  9. local board="$1"
  10.  
  11. case $board in
  12. aigale,ai-br100|\
  13. alfa-network,ac1200rm|\
  14. asus,rt-n12p|\
  15. dlink,dwr-116-a1|\
  16. dlink,dwr-921-c1|\
  17. dlink,dwr-922-e2|\
  18. dovado,tiny-ac|\
  19. ohyeah,oy-0001|\
  20. phicomm,psg1208|\
  21. planex,db-wrt01|\
  22. planex,mzk-750dhp|\
  23. ralink,mt7620a-evb|\
  24. ralink,mt7620a-mt7610e-evb|\
  25. ralink,mt7620a-v22sg-evb|\
  26. sanlinking,d240|\
  27. zbtlink,zbt-ape522ii|\
  28. zbtlink,zbt-we826-16m|\
  29. zbtlink,zbt-we826-32m|\
  30. zbtlink,zbt-we826-e|\
  31. zbtlink,zbt-wr8305rt|\
  32. zyxel,keenetic-omni)
  33. ucidef_add_switch "switch0" \
  34. "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
  35. ;;
  36. alfa-network,r36m-e4g|\
  37. zbtlink,zbt-we1026-h-32m)
  38. ucidef_add_switch "switch0" \
  39. "3:lan" "4:wan" "6@eth0"
  40. ;;
  41. alfa-network,tube-e4g|\
  42. buffalo,wmr-300|\
  43. dlink,dch-m225|\
  44. edimax,ew-7476rpc|\
  45. edimax,ew-7478ac|\
  46. elecom,wrh-300cr|\
  47. hootoo,ht-tm05|\
  48. kimax,u25awf-h1|\
  49. kimax,u35wf|\
  50. kingston,mlw221|\
  51. kingston,mlwg2|\
  52. microduino,microwrt|\
  53. netgear,ex2700|\
  54. netgear,ex3700|\
  55. netgear,ex6120|\
  56. netgear,ex6130|\
  57. netgear,wn3000rp-v3|\
  58. planex,cs-qr10|\
  59. planex,mzk-ex300np|\
  60. planex,mzk-ex750np|\
  61. ravpower,rp-wd03|\
  62. sercomm,na930|\
  63. tplink,re200-v1|\
  64. tplink,re210-v1|\
  65. yukai,bocco|\
  66. zbtlink,zbt-cpe102|\
  67. zte,q7)
  68. ucidef_add_switch "switch0"
  69. ucidef_add_switch_attr "switch0" "enable" "false"
  70. ucidef_set_interface_lan "eth0"
  71. ;;
  72. asus,rp-n53)
  73. ucidef_add_switch "switch0" \
  74. "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
  75. ;;
  76. geva,batterypoe|\
  77. asus,rt-ac51u|\
  78. asus,rt-ac54u|\
  79. asus,rt-n14u|\
  80. bdcom,wap2100-sk|\
  81. edimax,ew-7478apc|\
  82. glinet,gl-mt300a|\
  83. glinet,gl-mt300n|\
  84. glinet,gl-mt750|\
  85. hiwifi,hc5661|\
  86. wrtnode,wrtnode|\
  87. zbtlink,zbt-wa05|\
  88. zyxel,keenetic-omni-ii)
  89. ucidef_add_switch "switch0" \
  90. "0:lan" "6@eth0"
  91. ;;
  92. buffalo,whr-300hp2|\
  93. buffalo,whr-600d)
  94. ucidef_add_switch "switch0" \
  95. "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
  96. ;;
  97. buffalo,whr-1166d)
  98. ucidef_add_switch "switch0" \
  99. "0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0"
  100. ;;
  101. comfast,cf-wr800n|\
  102. hnet,c108)
  103. ucidef_add_switch "switch0" \
  104. "4:lan" "6@eth0"
  105. ;;
  106. dlink,dir-510l)
  107. ucidef_add_switch "switch0" \
  108. "0:lan" "6@eth0"
  109. ;;
  110. dlink,dir-810l|\
  111. netgear,jwnr2010-v5|\
  112. phicomm,psg1218a|\
  113. trendnet,tew-810dr|\
  114. zbtlink,zbt-we2026)
  115. ucidef_add_switch "switch0" \
  116. "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
  117. ;;
  118. dlink,dwr-118-a1)
  119. ucidef_add_switch "switch0" \
  120. "1:lan:2" "2:lan:3" "3:lan:1" "4:lan:0" "5:wan" "6@eth0"
  121. ;;
  122. dlink,dwr-118-a2)
  123. ucidef_add_switch "switch0" \
  124. "1:lan:2" "2:lan:1" "3:lan:3" "4:lan" "0:wan" "6@eth0"
  125. ;;
  126. dlink,dwr-960)
  127. ucidef_add_switch "switch0" \
  128. "1:lan" "2:lan" "3:lan" "5:lan" "0:wan" "6@eth0"
  129. ;;
  130. edimax,br-6478ac-v2|\
  131. lb-link,bl-w1200|\
  132. tplink,archer-c2-v1)
  133. ucidef_add_switch "switch0"
  134. ucidef_add_switch_attr "switch0" "enable" "false"
  135. ucidef_add_switch "switch1" \
  136. "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
  137. ;;
  138. engenius,esr600)
  139. ucidef_add_switch "switch0" \
  140. "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "0@eth0"
  141. ;;
  142. fon,fon2601)
  143. ucidef_add_switch "switch0" \
  144. "0:lan" "4:wan" "6@eth0"
  145. ;;
  146. head-weblink,hdrm200)
  147. ucidef_add_switch "switch0" \
  148. "1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
  149. ;;
  150. hiwifi,hc5761)
  151. ucidef_add_switch "switch0" \
  152. "1:lan" "4:lan" "0:wan" "6@eth0"
  153. ;;
  154. hiwifi,hc5861)
  155. ucidef_add_switch "switch0" \
  156. "0:lan" "1:lan" "5:wan" "6@eth0"
  157. ;;
  158. iodata,wn-ac1167gr|\
  159. iodata,wn-ac733gr3|\
  160. iptime,a1004ns)
  161. ucidef_add_switch "switch0"
  162. ucidef_add_switch_attr "switch0" "enable" "false"
  163. ucidef_add_switch "switch1" \
  164. "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
  165. ;;
  166. iptime,a104ns)
  167. ucidef_add_switch "switch0" \
  168. "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
  169. ;;
  170. lava,lr-25g001)
  171. ucidef_add_switch "switch0" \
  172. "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
  173. ;;
  174. lenovo,newifi-y1|\
  175. xiaomi,miwifi-mini)
  176. ucidef_add_switch "switch0" \
  177. "0:lan:2" "1:lan:1" "4:wan" "6@eth0"
  178. ;;
  179. lenovo,newifi-y1s)
  180. ucidef_add_switch "switch0" \
  181. "1:lan:4" "2:lan:3" "4:lan:2" "5:lan:1" "0:wan" "6@eth0"
  182. ;;
  183. linksys,e1700|\
  184. netis,wf2770|\
  185. ralink,mt7620a-mt7530-evb)
  186. ucidef_add_switch "switch0"
  187. ucidef_add_switch_attr "switch0" "enable" "false"
  188. ucidef_add_switch "switch1" \
  189. "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
  190. ;;
  191. nexx,wt3020-4m|\
  192. nexx,wt3020-8m)
  193. ucidef_add_switch "switch0" \
  194. "4:lan" "0:wan" "6@eth0"
  195. ;;
  196. phicomm,k2g|\
  197. wavlink,wl-wn530hg4)
  198. ucidef_add_switch "switch0" \
  199. "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5:wan" "6@eth0"
  200. ;;
  201. phicomm,psg1218b)
  202. ucidef_add_switch "switch0" \
  203. "0:lan:3" "1:lan:2" "2:lan:1" "3:wan" "6@eth0"
  204. ;;
  205. tplink,archer-c20i|\
  206. tplink,archer-c20-v1|\
  207. tplink,archer-c50-v1)
  208. ucidef_add_switch "switch0" \
  209. "1:lan:3" "2:lan:4" "3:lan:1" "4:lan:2" "0:wan" "6@eth0"
  210. ;;
  211. tplink,archer-mr200)
  212. ucidef_add_switch "switch0" \
  213. "0:lan" "1:lan" "2:lan" "3:lan" "6t@eth0"
  214. ucidef_set_interface_wan "usb0"
  215. ;;
  216. vonets,var11n-300)
  217. ucidef_add_switch "switch0" \
  218. "0:lan" "4:wan" "6@eth0"
  219. ;;
  220. youku,yk1)
  221. ucidef_add_switch "switch0" \
  222. "0:lan" "1:lan" "4:wan" "6@eth0"
  223. ;;
  224. zbtlink,zbt-we1026-5g-16m)
  225. ucidef_add_switch "switch0" \
  226. "0:lan" "6t@eth0"
  227. ;;
  228. zyxel,keenetic-viva)
  229. ucidef_add_switch "switch1" \
  230. "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
  231. ;;
  232. esac
  233. }
  234.  
  235. ramips_setup_macs()
  236. {
  237. local board="$1"
  238. local lan_mac=""
  239. local wan_mac=""
  240. local label_mac=""
  241.  
  242. case $board in
  243. aigale,ai-br100|\
  244. asus,rt-n12p|\
  245. asus,rt-n14u|\
  246. bdcom,wap2100-sk|\
  247. edimax,ew-7478apc|\
  248. fon,fon2601|\
  249. head-weblink,hdrm200|\
  250. netgear,jwnr2010-v5|\
  251. nexx,wt3020-4m|\
  252. nexx,wt3020-8m|\
  253. phicomm,psg1208|\
  254. planex,db-wrt01|\
  255. planex,mzk-750dhp|\
  256. sanlinking,d240|\
  257. vonets,var11n-300|\
  258. wrtnode,wrtnode|\
  259. zbtlink,zbt-ape522ii|\
  260. zbtlink,zbt-wa05|\
  261. zbtlink,zbt-we2026|\
  262. zbtlink,zbt-we826-16m|\
  263. zbtlink,zbt-we826-32m|\
  264. zbtlink,zbt-we826-e|\
  265. zbtlink,zbt-wr8305rt)
  266. wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1)
  267. ;;
  268. alfa-network,ac1200rm|\
  269. dlink,dir-810l|\
  270. trendnet,tew-810dr)
  271. wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x28)" 1)
  272. ;;
  273. alfa-network,r36m-e4g|\
  274. zbtlink,zbt-we1026-h-32m)
  275. wan_mac=$(mtd_get_mac_binary factory 0x2e)
  276. label_mac=$(mtd_get_mac_binary factory 0x4)
  277. ;;
  278. asus,rt-ac51u|\
  279. asus,rt-ac54u)
  280. lan_mac=$(mtd_get_mac_binary factory 0x22)
  281. ;;
  282. dlink,dch-m225)
  283. lan_mac=$(mtd_get_mac_ascii factory lanmac)
  284. ;;
  285. dlink,dir-510l|\
  286. dlink,dwr-116-a1|\
  287. dlink,dwr-118-a1|\
  288. dlink,dwr-118-a2|\
  289. dlink,dwr-921-c1|\
  290. dlink,dwr-922-e2|\
  291. dlink,dwr-960|\
  292. lava,lr-25g001)
  293. wan_mac=$(jboot_config_read -m -i $(find_mtd_part "config") -o 0xE000)
  294. lan_mac=$(macaddr_add "$wan_mac" 1)
  295. label_mac=$wan_mac
  296. ;;
  297. dovado,tiny-ac)
  298. lan_mac=$(mtd_get_mac_ascii u-boot-env LAN_MAC_ADDR)
  299. wan_mac=$(mtd_get_mac_ascii u-boot-env WAN_MAC_ADDR)
  300. ;;
  301. edimax,br-6478ac-v2)
  302. wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 2)
  303. ;;
  304. engenius,esr600)
  305. lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
  306. wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
  307. ;;
  308. glinet,gl-mt300a|\
  309. glinet,gl-mt300n|\
  310. glinet,gl-mt750)
  311. wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4000)" 1)
  312. label_mac=$(mtd_get_mac_binary factory 0x4)
  313. ;;
  314. hiwifi,hc5661|\
  315. hiwifi,hc5761|\
  316. hiwifi,hc5861)
  317. lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
  318. label_mac=$lan_mac
  319. [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
  320. wan_mac=$(macaddr_add "$lan_mac" 1)
  321. ;;
  322. iodata,wn-ac1167gr|\
  323. iodata,wn-ac733gr3)
  324. wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
  325. ;;
  326. iptime,a1004ns)
  327. wan_mac=$(mtd_get_mac_binary u-boot 0x1fc40)
  328. ;;
  329. iptime,a104ns)
  330. wan_mac=$(macaddr_add "$(mtd_get_mac_binary u-boot 0x1fc20)" 2)
  331. ;;
  332. lb-link,bl-w1200|\
  333. phicomm,k2g|\
  334. phicomm,psg1218a|\
  335. phicomm,psg1218b)
  336. wan_mac=$(mtd_get_mac_binary factory 0x2e)
  337. label_mac=$wan_mac
  338. ;;
  339. lenovo,newifi-y1|\
  340. lenovo,newifi-y1s|\
  341. ohyeah,oy-0001|\
  342. wavlink,wl-wn530hg4|\
  343. youku,yk1)
  344. wan_mac=$(mtd_get_mac_binary factory 0x2e)
  345. ;;
  346. linksys,e1700)
  347. wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
  348. ;;
  349. netis,wf2770)
  350. wan_mac=$(mtd_get_mac_binary factory 0x2e)
  351. label_mac=$wan_mac
  352. ;;
  353. tplink,archer-c2-v1|\
  354. tplink,archer-c20-v1|\
  355. tplink,archer-c20i|\
  356. tplink,archer-c50-v1|\
  357. tplink,archer-mr200)
  358. wan_mac=$(macaddr_add "$(mtd_get_mac_binary rom 0xf100)" 1)
  359. ;;
  360. zbtlink,zbt-we1026-5g-16m)
  361. label_mac=$(mtd_get_mac_binary factory 0x4)
  362. ;;
  363. zyxel,keenetic-omni|\
  364. zyxel,keenetic-omni-ii|\
  365. zyxel,keenetic-viva)
  366. wan_mac=$(mtd_get_mac_binary factory 0x28)
  367. ;;
  368. esac
  369.  
  370. [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
  371. [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
  372. [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
  373. }
  374.  
  375. board_config_update
  376. board=$(board_name)
  377. ramips_setup_interfaces $board
  378. ramips_setup_macs $board
  379. board_config_flush
  380.  
  381. exit 0
  382.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement