generic.mk 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344
  1. define Device/bsb
  2. BOARDNAME = BSB
  3. IMAGE_SIZE = 16000k
  4. CONSOLE = ttyATH0,115200
  5. MTDPARTS = spi0.0:128k(u-boot)ro,64k(u-boot-env)ro,16128k(firmware),64k(art)ro
  6. endef
  7. TARGET_DEVICES += bsb
  8. define Device/carambola2
  9. BOARDNAME = CARAMBOLA2
  10. IMAGE_SIZE = 16000k
  11. CONSOLE = ttyATH0,115200
  12. MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
  13. endef
  14. TARGET_DEVICES += carambola2
  15. define Device/cf-e316n-v2
  16. BOARDNAME = CF-E316N-V2
  17. IMAGE_SIZE = 16192k
  18. CONSOLE = ttyS0,115200
  19. MTDPARTS = spi0.0:64k(u-boot)ro,64k(art)ro,16192k(firmware),64k(nvram)ro
  20. endef
  21. TARGET_DEVICES += cf-e316n-v2
  22. define Device/weio
  23. BOARDNAME = WEIO
  24. IMAGE_SIZE = 16000k
  25. CONSOLE = ttyATH0,115200
  26. MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
  27. endef
  28. TARGET_DEVICES += weio
  29. define Device/gl-ar150
  30. BOARDNAME = GL-AR150
  31. IMAGE_SIZE = 16000k
  32. CONSOLE = ttyATH0,115200
  33. MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
  34. endef
  35. TARGET_DEVICES += gl-ar150
  36. define Device/gl-ar300
  37. BOARDNAME = GL-AR300
  38. IMAGE_SIZE = 16000k
  39. CONSOLE = ttyS0,115200
  40. MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
  41. endef
  42. TARGET_DEVICES += gl-ar300
  43. define Device/gl-domino
  44. BOARDNAME = DOMINO
  45. IMAGE_SIZE = 16000k
  46. CONSOLE = ttyATH0,115200
  47. MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
  48. endef
  49. TARGET_DEVICES += gl-domino
  50. define Device/wndr3700
  51. BOARDNAME = WNDR3700
  52. NETGEAR_KERNEL_MAGIC = 0x33373030
  53. NETGEAR_BOARD_ID = WNDR3700
  54. IMAGE_SIZE = 7680k
  55. MTDPARTS = spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,7680k(firmware),64k(art)ro
  56. IMAGES := sysupgrade.bin factory.img factory-NA.img
  57. KERNEL := kernel-bin | patch-cmdline | lzma -d20 | netgear-uImage lzma
  58. IMAGE/default = append-kernel $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
  59. IMAGE/sysupgrade.bin = $$(IMAGE/default) | check-size $$$$(IMAGE_SIZE)
  60. IMAGE/factory.img = $$(IMAGE/default) | netgear-dni | check-size $$$$(IMAGE_SIZE)
  61. IMAGE/factory-NA.img = $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
  62. endef
  63. define Device/wndr3700v2
  64. $(Device/wndr3700)
  65. NETGEAR_BOARD_ID = WNDR3700v2
  66. NETGEAR_KERNEL_MAGIC = 0x33373031
  67. NETGEAR_HW_ID = 29763654+16+64
  68. IMAGE_SIZE = 15872k
  69. MTDPARTS = spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,15872k(firmware),64k(art)ro
  70. IMAGES := sysupgrade.bin factory.img
  71. endef
  72. define Device/wndr3800
  73. $(Device/wndr3700v2)
  74. NETGEAR_BOARD_ID = WNDR3800
  75. NETGEAR_HW_ID = 29763654+16+128
  76. endef
  77. define Device/wndr3800ch
  78. $(Device/wndr3800)
  79. NETGEAR_BOARD_ID = WNDR3800CH
  80. endef
  81. define Device/wndrmac
  82. $(Device/wndr3700v2)
  83. NETGEAR_BOARD_ID = WNDRMAC
  84. endef
  85. define Device/wndrmacv2
  86. $(Device/wndr3800)
  87. NETGEAR_BOARD_ID = WNDRMACv2
  88. endef
  89. TARGET_DEVICES += wndr3700 wndr3700v2 wndr3800 wndr3800ch wndrmac wndrmacv2
  90. define Device/cap324
  91. BOARDNAME := CAP324
  92. DEVICE_PROFILE := CAP324
  93. IMAGE_SIZE = 15296k
  94. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,15296k(firmware),640k(certs),64k(nvram),64k(art)
  95. endef
  96. TARGET_DEVICES += cap324
  97. define Device/cap324-nocloud
  98. BOARDNAME := CAP324
  99. DEVICE_PROFILE := CAP324
  100. IMAGE_SIZE = 16000k
  101. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,16000k(firmware),64k(art)
  102. endef
  103. TARGET_DEVICES += cap324-nocloud
  104. define Device/cr3000
  105. BOARDNAME := CR3000
  106. DEVICE_PROFILE := CR3000
  107. IMAGE_SIZE = 7104k
  108. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)
  109. endef
  110. TARGET_DEVICES += cr3000
  111. define Device/cr3000-nocloud
  112. BOARDNAME := CR3000
  113. DEVICE_PROFILE := CR3000
  114. IMAGE_SIZE = 7808k
  115. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7808k(firmware),64k(art)
  116. endef
  117. TARGET_DEVICES += cr3000-nocloud
  118. define Device/cr5000
  119. BOARDNAME := CR5000
  120. DEVICE_PROFILE := CR5000
  121. IMAGE_SIZE = 7104k
  122. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)
  123. endef
  124. TARGET_DEVICES += cr5000
  125. define Device/cr5000-nocloud
  126. BOARDNAME := CR5000
  127. DEVICE_PROFILE := CR5000
  128. IMAGE_SIZE = 7808k
  129. MTDPARTS = spi0.0:256k(u-boot),64k(u-boot-env)ro,7808k(firmware),64k(art)
  130. endef
  131. TARGET_DEVICES += cr5000-nocloud
  132. define Device/antminer-s1
  133. $(Device/tplink-8mlzma)
  134. BOARDNAME := ANTMINER-S1
  135. DEVICE_PROFILE := ANTMINERS1
  136. TPLINK_HWID := 0x04440101
  137. CONSOLE := ttyATH0,115200
  138. endef
  139. define Device/antminer-s3
  140. $(Device/tplink-8mlzma)
  141. BOARDNAME := ANTMINER-S3
  142. DEVICE_PROFILE := ANTMINERS3
  143. TPLINK_HWID := 0x04440301
  144. CONSOLE := ttyATH0,115200
  145. endef
  146. define Device/antrouter-r1
  147. $(Device/tplink-8mlzma)
  148. BOARDNAME := ANTROUTER-R1
  149. DEVICE_PROFILE := ANTROUTERR1
  150. TPLINK_HWID := 0x44440101
  151. CONSOLE := ttyATH0,115200
  152. endef
  153. define Device/el-m150
  154. $(Device/tplink-8mlzma)
  155. BOARDNAME := EL-M150
  156. DEVICE_PROFILE := ELM150
  157. TPLINK_HWID := 0x01500101
  158. CONSOLE := ttyATH0,115200
  159. endef
  160. define Device/el-mini
  161. $(Device/tplink-8mlzma)
  162. BOARDNAME := EL-MINI
  163. DEVICE_PROFILE := ELMINI
  164. TPLINK_HWID := 0x01530001
  165. CONSOLE := ttyATH0,115200
  166. endef
  167. TARGET_DEVICES += antminer-s1 antminer-s3 antrouter-r1 el-m150 el-mini
  168. define Device/gl-inet-6408A-v1
  169. $(Device/tplink-8mlzma)
  170. BOARDNAME := GL-INET
  171. DEVICE_PROFILE := GLINET
  172. TPLINK_HWID := 0x08000001
  173. CONSOLE := ttyATH0,115200
  174. endef
  175. define Device/gl-inet-6416A-v1
  176. $(Device/tplink-16mlzma)
  177. BOARDNAME := GL-INET
  178. DEVICE_PROFILE := GLINET
  179. TPLINK_HWID := 0x08000001
  180. CONSOLE := ttyATH0,115200
  181. endef
  182. TARGET_DEVICES += gl-inet-6408A-v1 gl-inet-6416A-v1
  183. define Device/rnx-n360rt
  184. $(Device/tplink-4m)
  185. BOARDNAME := TL-WR941ND
  186. DEVICE_PROFILE := RNXN360RT
  187. TPLINK_HWID := 0x09410002
  188. TPLINK_HWREV := 0x00420001
  189. endef
  190. TARGET_DEVICES += rnx-n360rt
  191. define Device/mc-mac1200r
  192. $(Device/tplink-8mlzma)
  193. BOARDNAME := MC-MAC1200R
  194. DEVICE_PROFILE := MAC1200R
  195. TPLINK_HWID := 0x12000001
  196. endef
  197. TARGET_DEVICES += mc-mac1200r
  198. define Device/minibox-v1
  199. $(Device/tplink-16mlzma)
  200. BOARDNAME := MINIBOX-V1
  201. DEVICE_PROFILE := MINIBOXV1
  202. TPLINK_HWID := 0x3C000201
  203. CONSOLE := ttyATH0,115200
  204. endef
  205. TARGET_DEVICES += minibox-v1
  206. define Device/omy-g1
  207. $(Device/tplink-16mlzma)
  208. BOARDNAME := OMY-G1
  209. DEVICE_PROFILE := OMYG1
  210. TPLINK_HWID := 0x06660101
  211. endef
  212. define Device/omy-x1
  213. $(Device/tplink-8mlzma)
  214. BOARDNAME := OMY-X1
  215. DEVICE_PROFILE := OMYX1
  216. TPLINK_HWID := 0x06660201
  217. endef
  218. TARGET_DEVICES += omy-g1 omy-x1
  219. define Device/onion-omega
  220. $(Device/tplink-16mlzma)
  221. BOARDNAME := ONION-OMEGA
  222. DEVICE_PROFILE := OMEGA
  223. TPLINK_HWID := 0x04700001
  224. CONSOLE := ttyATH0,115200
  225. endef
  226. TARGET_DEVICES += onion-omega
  227. define Device/smart-300
  228. $(Device/tplink-8mlzma)
  229. BOARDNAME := SMART-300
  230. DEVICE_PROFILE := SMART-300
  231. TPLINK_HWID := 0x93410001
  232. endef
  233. TARGET_DEVICES += smart-300
  234. define Device/som9331
  235. $(Device/tplink-8mlzma)
  236. BOARDNAME := SOM9331
  237. DEVICE_PROFILE := SOM9331
  238. TPLINK_HWID := 0x04800054
  239. CONSOLE := ttyATH0,115200
  240. endef
  241. TARGET_DEVICES += som9331
  242. define Device/tellstick-znet-lite
  243. $(Device/tplink-16mlzma)
  244. BOARDNAME := TELLSTICK-ZNET-LITE
  245. DEVICE_PROFILE := TELLSTICKZNETLITE
  246. TPLINK_HWID := 0x00726001
  247. CONSOLE := ttyATH0,115200
  248. endef
  249. TARGET_DEVICES += tellstick-znet-lite
  250. define Device/oolite
  251. $(Device/tplink-16mlzma)
  252. BOARDNAME := GS-OOLITE
  253. DEVICE_PROFILE := OOLITE
  254. TPLINK_HWID := 0x3C000101
  255. CONSOLE := ttyATH0,115200
  256. endef
  257. TARGET_DEVICES += oolite
  258. define Device/NBG6616
  259. BOARDNAME = NBG6616
  260. KERNEL_SIZE = 2048k
  261. IMAGE_SIZE = 15323k
  262. MTDPARTS = spi0.0:192k(u-boot)ro,64k(env)ro,64k(RFdata)ro,384k(zyxel_rfsd),384k(romd),64k(header),2048k(kernel),13184k(rootfs),15232k@0x120000(firmware)
  263. CMDLINE += mem=128M
  264. IMAGES := sysupgrade.bin
  265. KERNEL := kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 boot/vmlinux.lzma.uImage
  266. IMAGE/sysupgrade.bin = append-kernel $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  267. # We cannot currently build a factory image. It is the sysupgrade image
  268. # prefixed with a header (which is actually written into the MTD device).
  269. # The header is 2kiB and is filled with 0xff. The format seems to be:
  270. # 2 bytes: 0x0000
  271. # 2 bytes: checksum of the data partition (big endian)
  272. # 4 bytes: length of the contained image file (big endian)
  273. # 32 bytes: Firmware Version string (NUL terminated, 0xff padded)
  274. # 2 bytes: 0x0000
  275. # 2 bytes: checksum over the header partition (big endian)
  276. # 32 bytes: Model (e.g. "NBG6616", NUL termiated, 0xff padded)
  277. # rest: 0xff padding
  278. #
  279. # The checksums are calculated by adding up all bytes and if a 16bit
  280. # overflow occurs, one is added and the sum is masked to 16 bit:
  281. # csum = csum + databyte; if (csum > 0xffff) { csum += 1; csum &= 0xffff };
  282. # Should the file have an odd number of bytes then the byte len-0x800 is
  283. # used additionally.
  284. # The checksum for the header is calcualted over the first 2048 bytes with
  285. # the firmware checksum as the placeholder during calculation.
  286. #
  287. # The header is padded with 0xff to the erase block size of the device.
  288. endef
  289. TARGET_DEVICES += NBG6616
  290. define Device/c-55
  291. BOARDNAME = C-55
  292. KERNEL_SIZE = 2048k
  293. IMAGE_SIZE = 15872k
  294. MTDPARTS = spi0.0:256k(u-boot)ro,128k(u-boot-env)ro,2048k(kernel),13824k(rootfs),13824k(opt)ro,2624k(failsafe)ro,64k(art)ro,15872k@0x60000(firmware)
  295. IMAGE/sysupgrade.bin = append-kernel $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  296. endef
  297. TARGET_DEVICES += c-55