ramips.sh 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481
  1. #!/bin/sh
  2. #
  3. # Copyright (C) 2010-2013 OpenWrt.org
  4. #
  5. RAMIPS_BOARD_NAME=
  6. RAMIPS_MODEL=
  7. ramips_board_detect() {
  8. local machine
  9. local name
  10. machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)
  11. case "$machine" in
  12. *"3G150B")
  13. name="3g150b"
  14. ;;
  15. *"3G300M")
  16. name="3g300m"
  17. ;;
  18. *"3g-6200n")
  19. name="3g-6200n"
  20. ;;
  21. *"3g-6200nl")
  22. name="3g-6200nl"
  23. ;;
  24. *"A5-V11")
  25. name="a5-v11"
  26. ;;
  27. *"Ai-BR100")
  28. name="ai-br100"
  29. ;;
  30. *"Air3GII")
  31. name="air3gii"
  32. ;;
  33. *"ALL0239-3G")
  34. name="all0239-3g"
  35. ;;
  36. *"ALL0256N")
  37. name="all0256n"
  38. ;;
  39. *"ALL5002")
  40. name="all5002"
  41. ;;
  42. *"ALL5003")
  43. name="all5003"
  44. ;;
  45. *"AR670W")
  46. name="ar670w"
  47. ;;
  48. *"AR725W")
  49. name="ar725w"
  50. ;;
  51. *"ASL26555")
  52. name="asl26555"
  53. ;;
  54. *"ATP-52B")
  55. name="atp-52b"
  56. ;;
  57. *"AWAPN2403")
  58. name="awapn2403"
  59. ;;
  60. *"AWM002 EVB")
  61. name="awm002-evb"
  62. ;;
  63. *"AWM003 EVB")
  64. name="awm003-evb"
  65. ;;
  66. *"BC2")
  67. name="bc2"
  68. ;;
  69. *"BR-6425")
  70. name="br-6425"
  71. ;;
  72. *"BR-6475nD")
  73. name="br-6475nd"
  74. ;;
  75. *"Broadway")
  76. name="broadway"
  77. ;;
  78. *"C20i")
  79. name="c20i"
  80. ;;
  81. *"Carambola")
  82. name="carambola"
  83. ;;
  84. *"CF-WR800N")
  85. name="cf-wr800n"
  86. ;;
  87. *"CY-SWR1100")
  88. name="cy-swr1100"
  89. ;;
  90. *"D105")
  91. name="d105"
  92. ;;
  93. *"DAP-1350")
  94. name="dap-1350"
  95. ;;
  96. *"DB-WRT01")
  97. name="db-wrt01"
  98. ;;
  99. *"DCS-930")
  100. name="dcs-930"
  101. ;;
  102. *"DCS-930L B1")
  103. name="dcs-930l-b1"
  104. ;;
  105. *"DIR-300 B1")
  106. name="dir-300-b1"
  107. ;;
  108. *"DIR-300 B7")
  109. name="dir-300-b7"
  110. ;;
  111. *"DIR-320 B1")
  112. name="dir-320-b1"
  113. ;;
  114. *"DIR-600 B1")
  115. name="dir-600-b1"
  116. ;;
  117. *"DIR-600 B2")
  118. name="dir-600-b2"
  119. ;;
  120. *"DIR-610 A1")
  121. name="dir-610-a1"
  122. ;;
  123. *"DIR-615 D")
  124. name="dir-615-d"
  125. ;;
  126. *"DIR-615 H1")
  127. name="dir-615-h1"
  128. ;;
  129. *"DIR-620 A1")
  130. name="dir-620-a1"
  131. ;;
  132. *"DIR-620 D1")
  133. name="dir-620-d1"
  134. ;;
  135. *"DIR-645")
  136. name="dir-645"
  137. ;;
  138. *"DIR-810L")
  139. name="dir-810l"
  140. ;;
  141. *"DIR-860L B1")
  142. name="dir-860l-b1"
  143. ;;
  144. *"Dovado Tiny AC")
  145. name="tiny-ac"
  146. ;;
  147. *"E1700")
  148. name="e1700"
  149. ;;
  150. *"ESR-9753")
  151. name="esr-9753"
  152. ;;
  153. *"F5D8235 v1")
  154. name="f5d8235-v1"
  155. ;;
  156. *"F5D8235 v2")
  157. name="f5d8235-v2"
  158. ;;
  159. *"F7C027")
  160. name="f7c027"
  161. ;;
  162. *"FireWRT")
  163. name="firewrt"
  164. ;;
  165. *"Fonera 2.0N")
  166. name="fonera20n"
  167. ;;
  168. *"FreeStation5")
  169. name="freestation5"
  170. ;;
  171. *"HC5661")
  172. name="hc5661"
  173. ;;
  174. *"HC5761")
  175. name="hc5761"
  176. ;;
  177. *"HC5861")
  178. name="hc5861"
  179. ;;
  180. *"HG255D")
  181. name="hg255d"
  182. ;;
  183. *"HLK-RM04")
  184. name="hlk-rm04"
  185. ;;
  186. *"HPM")
  187. name="hpm"
  188. ;;
  189. *"HT-TM02")
  190. name="ht-tm02"
  191. ;;
  192. *"HW550-3G")
  193. name="hw550-3g"
  194. ;;
  195. *"IP2202")
  196. name="ip2202"
  197. ;;
  198. *"M3")
  199. name="m3"
  200. ;;
  201. *"M4")
  202. name="m4"
  203. ;;
  204. *"MediaTek LinkIt Smart7688")
  205. linkit="$(dd bs=1 skip=1024 count=12 if=/dev/mtd2 2> /dev/null)"
  206. if [ "${linkit}" = "LINKITS7688D" ]; then
  207. name="linkits7688d"
  208. RAMIPS_MODEL="${machine} DUO"
  209. else
  210. name="linkits7688"
  211. fi
  212. ;;
  213. *"Memory 2 Move")
  214. name="m2m"
  215. ;;
  216. *"MicroWRT")
  217. name="microwrt"
  218. ;;
  219. *"MiniEMBPlug")
  220. name="miniembplug"
  221. ;;
  222. *"MiniEMBWiFi")
  223. name="miniembwifi"
  224. ;;
  225. *"MiWiFi Mini")
  226. name="miwifi-mini"
  227. ;;
  228. *"MLW221")
  229. name="mlw221"
  230. ;;
  231. *"MLWG2")
  232. name="mlwg2"
  233. ;;
  234. *"MOFI3500-3GN")
  235. name="mofi3500-3gn"
  236. ;;
  237. *"MPR-A1")
  238. name="mpr-a1"
  239. ;;
  240. *"MPR-A2")
  241. name="mpr-a2"
  242. ;;
  243. *"MR-102N")
  244. name="mr-102n"
  245. ;;
  246. *"MT7620a + MT7530 evaluation"*)
  247. name="mt7620a_mt7530"
  248. ;;
  249. *"MT7620a V22SG"*)
  250. name="mt7620a_v22sg"
  251. ;;
  252. *"MT7621 evaluation"*)
  253. name="mt7621"
  254. ;;
  255. *"MT7628AN evaluation"*)
  256. name="mt7628"
  257. ;;
  258. *"MT7688 evaluation"*)
  259. name="mt7688"
  260. ;;
  261. *"MZK-750DHP")
  262. name="mzk-750dhp"
  263. ;;
  264. *"MZK-DP150N")
  265. name="mzk-dp150n"
  266. ;;
  267. *"MZK-W300NH2"*)
  268. name="mzk-w300nh2"
  269. ;;
  270. *"NA930")
  271. name="na930"
  272. ;;
  273. *"NBG-419N")
  274. name="nbg-419n"
  275. ;;
  276. *"NCS601W")
  277. name="ncs601w"
  278. ;;
  279. *"NW718")
  280. name="nw718"
  281. ;;
  282. *"OY-0001")
  283. name="oy-0001"
  284. ;;
  285. *"PBR-M1")
  286. name="pbr-m1"
  287. ;;
  288. *"PSR-680W"*)
  289. name="psr-680w"
  290. ;;
  291. *"PWH2004")
  292. name="pwh2004"
  293. ;;
  294. *"PX-4885")
  295. name="px-4885"
  296. ;;
  297. *"Q7")
  298. name="zte-q7"
  299. ;;
  300. *"RE6500")
  301. name="re6500"
  302. ;;
  303. *"RN502J")
  304. name="xdxrn502j"
  305. ;;
  306. *"RP-N53")
  307. name="rp-n53"
  308. ;;
  309. *"RT5350F-OLinuXino")
  310. name="rt5350f-olinuxino"
  311. ;;
  312. *"RT5350F-OLinuXino-EVB")
  313. name="rt5350f-olinuxino-evb"
  314. ;;
  315. *"RT-G32 B1")
  316. name="rt-g32-b1"
  317. ;;
  318. *"RT-N10+")
  319. name="rt-n10-plus"
  320. ;;
  321. *"RT-N13U")
  322. name="rt-n13u"
  323. ;;
  324. *"RT-N14U")
  325. name="rt-n14u"
  326. ;;
  327. *"RT-N15")
  328. name="rt-n15"
  329. ;;
  330. *"RT-N56U")
  331. name="rt-n56u"
  332. ;;
  333. *"RUT5XX")
  334. name="rut5xx"
  335. ;;
  336. *"SAP-G3200U3")
  337. name="sap-g3200u3"
  338. ;;
  339. *"SL-R7205"*)
  340. name="sl-r7205"
  341. ;;
  342. *"TEW-691GR")
  343. name="tew-691gr"
  344. ;;
  345. *"TEW-692GR")
  346. name="tew-692gr"
  347. ;;
  348. *"UR-326N4G")
  349. name="ur-326n4g"
  350. ;;
  351. *"UR-336UN")
  352. name="ur-336un"
  353. ;;
  354. *"V11ST-FE")
  355. name="v11st-fe"
  356. ;;
  357. *"V22RW-2X2")
  358. name="v22rw-2x2"
  359. ;;
  360. *"VoCore")
  361. name="vocore"
  362. ;;
  363. *"W150M")
  364. name="w150m"
  365. ;;
  366. *"W306R V2.0")
  367. name="w306r-v20"
  368. ;;
  369. *"W502U")
  370. name="w502u"
  371. ;;
  372. *"WCR-150GN")
  373. name="wcr-150gn"
  374. ;;
  375. *"WHR-1166D")
  376. name="whr-1166d"
  377. ;;
  378. *"WHR-300HP2")
  379. name="whr-300hp2"
  380. ;;
  381. *"WHR-600D")
  382. name="whr-600d"
  383. ;;
  384. *"WHR-G300N")
  385. name="whr-g300n"
  386. ;;
  387. *"WIZARD 8800")
  388. name="wizard8800"
  389. ;;
  390. *"WizFi630A")
  391. name="wizfi630a"
  392. ;;
  393. *"WL-330N")
  394. name="wl-330n"
  395. ;;
  396. *"WL-330N3G")
  397. name="wl-330n3g"
  398. ;;
  399. *"WL-341 v3")
  400. name="wl-341v3"
  401. ;;
  402. *"WL-351 v1 002")
  403. name="wl-351"
  404. ;;
  405. *"WLI-TX4-AG300N")
  406. name="wli-tx4-ag300n"
  407. ;;
  408. *"WMR-300")
  409. name="wmr-300"
  410. ;;
  411. *"WNCE2001")
  412. name="wnce2001"
  413. ;;
  414. *"WR512-3GN-like"*)
  415. name="wr512-3gn"
  416. ;;
  417. *"WR6202")
  418. name="wr6202"
  419. ;;
  420. *"WRTNODE")
  421. name="wrtnode"
  422. ;;
  423. *"WSR-1166DHP")
  424. name="wsr-1166"
  425. ;;
  426. *"WSR-600DHP")
  427. name="wsr-600"
  428. ;;
  429. *"WT1520")
  430. name="wt1520"
  431. ;;
  432. *"WT3020")
  433. name="wt3020"
  434. ;;
  435. *"WZR-AGL300NH")
  436. name="wzr-agl300nh"
  437. ;;
  438. *"X5")
  439. name="x5"
  440. ;;
  441. *"X8")
  442. name="x8"
  443. ;;
  444. *"Y1")
  445. name="y1"
  446. ;;
  447. *"Y1S")
  448. name="y1s"
  449. ;;
  450. *"ZBT-WA05")
  451. name="zbt-wa05"
  452. ;;
  453. *"ZBT-WR8305RT")
  454. name="zbt-wr8305rt"
  455. ;;
  456. *)
  457. name="generic"
  458. ;;
  459. esac
  460. [ -z "$RAMIPS_BOARD_NAME" ] && RAMIPS_BOARD_NAME="$name"
  461. [ -z "$RAMIPS_MODEL" ] && RAMIPS_MODEL="$machine"
  462. [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
  463. echo "$RAMIPS_BOARD_NAME" > /tmp/sysinfo/board_name
  464. echo "$RAMIPS_MODEL" > /tmp/sysinfo/model
  465. }
  466. ramips_board_name() {
  467. local name
  468. [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
  469. [ -z "$name" ] && name="unknown"
  470. echo "$name"
  471. }