platform.sh 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. #
  2. # Copyright (C) 2010 OpenWrt.org
  3. #
  4. . /lib/ramips.sh
  5. PART_NAME=firmware
  6. RAMFS_COPY_DATA=/lib/ramips.sh
  7. platform_check_image() {
  8. local board=$(ramips_board_name)
  9. local magic="$(get_magic_long "$1")"
  10. [ "$#" -gt 1 ] && return 1
  11. case "$board" in
  12. 3g150b|\
  13. 3g300m|\
  14. 3g-6200n|\
  15. 3g-6200nl|\
  16. a5-v11|\
  17. ai-br100|\
  18. air3gii|\
  19. all0239-3g|\
  20. all0256n|\
  21. all5002|\
  22. all5003|\
  23. ar725w|\
  24. asl26555|\
  25. awapn2403|\
  26. awm002-evb|\
  27. awm003-evb|\
  28. bc2|\
  29. broadway|\
  30. carambola|\
  31. cf-wr800n|\
  32. d105|\
  33. dap-1350|\
  34. db-wrt01|\
  35. dcs-930|\
  36. dcs-930l-b1|\
  37. dir-300-b1|\
  38. dir-300-b7|\
  39. dir-320-b1|\
  40. dir-600-b1|\
  41. dir-600-b2|\
  42. dir-615-d|\
  43. dir-615-h1|\
  44. dir-620-a1|\
  45. dir-620-d1|\
  46. dir-810l|\
  47. e1700|\
  48. esr-9753|\
  49. f7c027|\
  50. firewrt|\
  51. fonera20n|\
  52. freestation5|\
  53. hc5*61|\
  54. hg255d|\
  55. hlk-rm04|\
  56. hpm|\
  57. ht-tm02|\
  58. hw550-3g|\
  59. ip2202|\
  60. linkits7688|\
  61. linkits7688d|\
  62. m2m|\
  63. m3|\
  64. m4|\
  65. microwrt|\
  66. miniembplug|\
  67. miniembwifi|\
  68. miwifi-mini|\
  69. mlw221|\
  70. mlwg2|\
  71. mofi3500-3gn|\
  72. mpr-a1|\
  73. mpr-a2|\
  74. mr-102n|\
  75. mzk-dp150n|\
  76. mzk-w300nh2|\
  77. nbg-419n|\
  78. nw718|\
  79. oy-0001|\
  80. pbr-m1|\
  81. psr-680w|\
  82. px-4885|\
  83. re6500|\
  84. rp-n53|\
  85. rt5350f-olinuxino|\
  86. rt5350f-olinuxino-evb|\
  87. rt-g32-b1|\
  88. rt-n10-plus|\
  89. rt-n13u|\
  90. rt-n14u|\
  91. rt-n15|\
  92. rt-n56u|\
  93. rut5xx|\
  94. sap-g3200u3|\
  95. sl-r7205|\
  96. tew-691gr|\
  97. tew-692gr|\
  98. tiny-ac|\
  99. ur-326n4g|\
  100. ur-336un|\
  101. v22rw-2x2|\
  102. vocore|\
  103. w150m|\
  104. w306r-v20|\
  105. w502u|\
  106. whr-1166d|\
  107. whr-300hp2|\
  108. whr-600d|\
  109. whr-g300n|\
  110. wizfi630a|\
  111. wl-330n|\
  112. wl-330n3g|\
  113. wl-341v3|\
  114. wl-351|\
  115. wli-tx4-ag300n|\
  116. wmr-300|\
  117. wnce2001|\
  118. wr512-3gn|\
  119. wr6202|\
  120. wrtnode|\
  121. wsr-600|\
  122. wt1520|\
  123. wt3020|\
  124. wzr-agl300nh|\
  125. x5|\
  126. x8|\
  127. y1|\
  128. y1s|\
  129. zbt-wa05|\
  130. zbt-wg2626|\
  131. zbt-wr8305rt|\
  132. zte-q7|\
  133. youku-yk1)
  134. [ "$magic" != "27051956" ] && {
  135. echo "Invalid image type."
  136. return 1
  137. }
  138. return 0
  139. ;;
  140. ar670w)
  141. [ "$magic" != "6d000080" ] && {
  142. echo "Invalid image type."
  143. return 1
  144. }
  145. return 0
  146. ;;
  147. br-6475nd)
  148. [ "$magic" != "43535953" ] && {
  149. echo "Invalid image type."
  150. return 1
  151. }
  152. return 0
  153. ;;
  154. c20i)
  155. [ "$magic" != "03000000" ] && {
  156. echo "Invalid image type."
  157. return 1
  158. }
  159. return 0
  160. ;;
  161. cy-swr1100|\
  162. dir-610-a1|\
  163. dir-645|\
  164. dir-860l-b1)
  165. [ "$magic" != "5ea3a417" ] && {
  166. echo "Invalid image type."
  167. return 1
  168. }
  169. return 0
  170. ;;
  171. wsr-1166)
  172. [ "$magic" != "48445230" ] && {
  173. echo "Invalid image type."
  174. return 1
  175. }
  176. return 0
  177. ;;
  178. esac
  179. echo "Sysupgrade is not yet supported on $board."
  180. return 1
  181. }
  182. platform_do_upgrade() {
  183. local board=$(ramips_board_name)
  184. case "$board" in
  185. *)
  186. default_do_upgrade "$ARGV"
  187. ;;
  188. esac
  189. }
  190. disable_watchdog() {
  191. killall watchdog
  192. ( ps | grep -v 'grep' | grep '/dev/watchdog' ) && {
  193. echo 'Could not disable watchdog'
  194. return 1
  195. }
  196. }
  197. blink_led() {
  198. . /etc/diag.sh; set_state upgrade
  199. }
  200. append sysupgrade_pre_upgrade disable_watchdog
  201. append sysupgrade_pre_upgrade blink_led