generic.mk 78 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838
  1. include ./common-buffalo.mk
  2. include ./common-netgear.mk
  3. include ./common-senao.mk
  4. include ./common-tp-link.mk
  5. include ./common-yuncore.mk
  6. include ./common-ubnt.mk
  7. DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
  8. DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
  9. DEVICE_VARS += KERNEL_INITRAMFS_PREFIX DAP_SIGNATURE
  10. DEVICE_VARS += EDIMAX_HEADER_MAGIC EDIMAX_HEADER_MODEL
  11. DEVICE_VARS += OPENMESH_CE_TYPE ZYXEL_MODEL_STRING
  12. define Build/add-elecom-factory-initramfs
  13. $(eval edimax_model=$(word 1,$(1)))
  14. $(eval product=$(word 2,$(1)))
  15. $(STAGING_DIR_HOST)/bin/mkedimaximg \
  16. -b -s CSYS -m $(edimax_model) \
  17. -f 0x70000 -S 0x01100000 \
  18. -i $@ -o [email protected]
  19. $(call Build/elecom-product-header,$(product) [email protected])
  20. if [ "$$(stat -c%s [email protected])" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
  21. mv [email protected] $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
  22. else \
  23. echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
  24. fi
  25. endef
  26. define Build/addpattern
  27. -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
  28. -v v$(ADDPATTERN_VERSION) -i $@ -o [email protected]
  29. -mv "[email protected]" "$@"
  30. endef
  31. define Build/append-md5sum-bin
  32. $(MKHASH) md5 $@ | sed 's/../\\\\x&/g' |\
  33. xargs echo -ne >> $@
  34. endef
  35. define Build/cybertan-trx
  36. @echo -n '' > [email protected]
  37. -$(STAGING_DIR_HOST)/bin/trx -o [email protected] \
  38. -f $(IMAGE_KERNEL) -F [email protected] \
  39. -x 32 -a 0x10000 -x -32 -f $@
  40. -mv "[email protected]" "$@"
  41. -rm [email protected]
  42. endef
  43. define Build/edimax-headers
  44. $(eval edimax_magic=$(word 1,$(1)))
  45. $(eval edimax_model=$(word 2,$(1)))
  46. $(STAGING_DIR_HOST)/bin/edimax_fw_header -M $(edimax_magic) -m $(edimax_model)\
  47. -v $(VERSION_DIST)$(firstword $(subst +, , $(firstword $(subst -, ,$(REVISION))))) \
  48. -n "uImage" \
  49. -i $(KDIR)/loader-$(DEVICE_NAME).uImage \
  50. -o [email protected]
  51. $(STAGING_DIR_HOST)/bin/edimax_fw_header -M $(edimax_magic) -m $(edimax_model)\
  52. -v $(VERSION_DIST)$(firstword $(subst +, , $(firstword $(subst -, ,$(REVISION))))) \
  53. -n "rootfs" \
  54. -i $@ \
  55. -o [email protected]
  56. cat [email protected] [email protected] > $@
  57. rm -rf [email protected] [email protected]
  58. endef
  59. define Build/mkdapimg2
  60. $(STAGING_DIR_HOST)/bin/mkdapimg2 \
  61. -i $@ -o [email protected] \
  62. -s $(DAP_SIGNATURE) \
  63. -v $(VERSION_DIST)-$(firstword $(subst +, , \
  64. $(firstword $(subst -, ,$(REVISION))))) \
  65. -r Default \
  66. $(if $(1),-k $(1))
  67. mv [email protected] $@
  68. endef
  69. define Build/mkmylofw_16m
  70. $(eval device_id=$(word 1,$(1)))
  71. $(eval revision=$(word 2,$(1)))
  72. # On WPJ344, WPJ531, and WPJ563, the default boot command tries 0x9f680000
  73. # first and fails if the remains of the stock image are sill there
  74. # - resulting in an infinite boot loop.
  75. # The size parameter is grown to have that block deleted if the firmware
  76. # isn't big enough by itself.
  77. let \
  78. size="$$(stat -c%s $@)" \
  79. pad="$(subst k,* 1024,$(BLOCKSIZE))" \
  80. pad="(pad - (size % pad)) % pad" \
  81. newsize='size + pad' ; \
  82. [ $$newsize -lt $$((0x660000)) ] && newsize=0x660000 ; \
  83. $(STAGING_DIR_HOST)/bin/mkmylofw \
  84. -B WPE72 -i 0x11f6:$(device_id):0x11f6:$(device_id) -r $(revision) \
  85. -s 0x1000000 -p0x30000:$$newsize:al:0x80060000:"OpenWRT":$@ \
  86. [email protected]
  87. @mv [email protected] $@
  88. endef
  89. define Build/mkwrggimg
  90. $(STAGING_DIR_HOST)/bin/mkwrggimg -b \
  91. -i $@ -o [email protected] -d /dev/mtdblock/1 \
  92. -m $(DEVICE_MODEL)-$(DEVICE_VARIANT) -s $(DAP_SIGNATURE) \
  93. -v $(VERSION_DIST) -B $(REVISION)
  94. mv [email protected] $@
  95. endef
  96. define Build/nec-enc
  97. $(STAGING_DIR_HOST)/bin/nec-enc \
  98. -i $@ -o [email protected] -k $(1)
  99. mv [email protected] $@
  100. endef
  101. define Build/nec-fw
  102. ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
  103. ( \
  104. echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
  105. echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
  106. dd if=$@; \
  107. ) > [email protected]
  108. mv [email protected] $@
  109. endef
  110. define Build/pisen_wmb001n-factory
  111. -[ -f "$@" ] && \
  112. mkdir -p "[email protected]" && \
  113. cp "$(KDIR)/loader-$(word 1,$(1)).uImage" "[email protected]/uImage" && \
  114. mv "$@" "[email protected]/rootfs" && \
  115. cp "bin/pisen_wmb001n_factory-header.bin" "$@" && \
  116. $(TAR) -cp --numeric-owner --owner=0 --group=0 --mode=a-s --sort=name \
  117. $(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
  118. -C "[email protected]" . | gzip -9n >> "$@" && \
  119. rm -rf "[email protected]"
  120. endef
  121. define Build/teltonika-fw-fake-checksum
  122. # Teltonika U-Boot web based firmware upgrade/recovery routine compares
  123. # 16 bytes from md5sum1[16] field in TP-Link v1 header (offset: 76 bytes
  124. # from begin of the firmware file) with 16 bytes stored just before
  125. # 0xdeadc0de marker. Values are only compared, MD5 sum is not verified.
  126. let \
  127. offs="$$(stat -c%s $@) - $(1)"; \
  128. dd if=$@ bs=1 count=16 skip=76 |\
  129. dd of=$@ bs=1 count=16 seek=$$offs conv=notrunc
  130. endef
  131. define Build/teltonika-v1-header
  132. $(STAGING_DIR_HOST)/bin/mktplinkfw \
  133. -c -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -L $(KERNEL_LOADADDR) \
  134. -E $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
  135. -m $(TPLINK_HEADER_VERSION) -N "$(VERSION_DIST)" -V "RUT2xx " \
  136. -k $@ -o [email protected] $(1)
  137. @mv [email protected] $@
  138. endef
  139. define Build/wrgg-pad-rootfs
  140. $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@
  141. endef
  142. define Build/zyxel-tar-bz2
  143. mkdir -p [email protected]
  144. mv $@ [email protected]/$(word 2,$(1))
  145. cp $(KDIR)/loader-$(DEVICE_NAME).uImage [email protected]/$(word 1,$(1)).lzma.uImage
  146. $(TAR) -cjf $@ -C [email protected] .
  147. rm -rf [email protected]
  148. endef
  149. define Device/seama
  150. KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
  151. KERNEL_INITRAMFS := $$(KERNEL) | seama
  152. IMAGES += factory.bin
  153. SEAMA_MTDBLOCK := 1
  154. # 64 bytes offset:
  155. # - 28 bytes seama_header
  156. # - 36 bytes of META data (4-bytes aligned)
  157. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
  158. IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
  159. check-size | append-metadata
  160. IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
  161. seama-seal | check-size
  162. SEAMA_SIGNATURE :=
  163. endef
  164. define Device/8dev_carambola2
  165. SOC := ar9331
  166. DEVICE_VENDOR := 8devices
  167. DEVICE_MODEL := Carambola2
  168. DEVICE_PACKAGES := kmod-usb-chipidea2
  169. IMAGE_SIZE := 16000k
  170. SUPPORTED_DEVICES += carambola2
  171. endef
  172. TARGET_DEVICES += 8dev_carambola2
  173. define Device/8dev_lima
  174. SOC := qca9531
  175. DEVICE_VENDOR := 8devices
  176. DEVICE_MODEL := Lima
  177. DEVICE_PACKAGES := kmod-usb2
  178. IMAGE_SIZE := 15616k
  179. SUPPORTED_DEVICES += lima
  180. endef
  181. TARGET_DEVICES += 8dev_lima
  182. define Device/adtran_bsap1880
  183. SOC := ar7161
  184. DEVICE_VENDOR := Adtran/Bluesocket
  185. DEVICE_PACKAGES += -swconfig -uboot-envtools fconfig
  186. KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
  187. KERNEL_INITRAMFS := kernel-bin | append-dtb
  188. IMAGE_SIZE := 11200k
  189. IMAGES += kernel.bin rootfs.bin
  190. IMAGE/kernel.bin := append-kernel
  191. IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to $$(BLOCKSIZE)
  192. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
  193. check-size | sysupgrade-tar rootfs=$$$$@ | append-metadata
  194. endef
  195. define Device/adtran_bsap1800-v2
  196. $(Device/adtran_bsap1880)
  197. DEVICE_MODEL := BSAP-1800
  198. DEVICE_VARIANT := v2
  199. endef
  200. TARGET_DEVICES += adtran_bsap1800-v2
  201. define Device/adtran_bsap1840
  202. $(Device/adtran_bsap1880)
  203. DEVICE_MODEL := BSAP-1840
  204. endef
  205. TARGET_DEVICES += adtran_bsap1840
  206. define Device/airtight_c-75
  207. SOC := qca9550
  208. DEVICE_VENDOR := AirTight Networks
  209. DEVICE_MODEL := C-75
  210. DEVICE_ALT0_VENDOR := Mojo Networks
  211. DEVICE_ALT0_MODEL := C-75
  212. DEVICE_ALT1_VENDOR := WatchGuard
  213. DEVICE_ALT1_MODEL := AP320
  214. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
  215. IMAGE_SIZE := 32320k
  216. KERNEL_SIZE := 15936k
  217. endef
  218. TARGET_DEVICES += airtight_c-75
  219. define Device/alfa-network_ap121f
  220. SOC := ar9331
  221. DEVICE_VENDOR := ALFA Network
  222. DEVICE_MODEL := AP121F
  223. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-storage -swconfig
  224. IMAGE_SIZE := 16064k
  225. SUPPORTED_DEVICES += ap121f
  226. endef
  227. TARGET_DEVICES += alfa-network_ap121f
  228. define Device/alfa-network_ap121fe
  229. SOC := ar9331
  230. DEVICE_VENDOR := ALFA Network
  231. DEVICE_MODEL := AP121FE
  232. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-gadget-eth -swconfig
  233. IMAGE_SIZE := 16064k
  234. endef
  235. TARGET_DEVICES += alfa-network_ap121fe
  236. define Device/alfa-network_n2q
  237. SOC := qca9531
  238. DEVICE_VENDOR := ALFA Network
  239. DEVICE_MODEL := N2Q
  240. DEVICE_PACKAGES := kmod-i2c-gpio kmod-gpio-pcf857x kmod-usb2 \
  241. kmod-usb-ledtrig-usbport rssileds
  242. IMAGE_SIZE := 15872k
  243. endef
  244. TARGET_DEVICES += alfa-network_n2q
  245. define Device/alfa-network_n5q
  246. SOC := ar9344
  247. DEVICE_VENDOR := ALFA Network
  248. DEVICE_MODEL := N5Q
  249. DEVICE_PACKAGES := rssileds
  250. IMAGE_SIZE := 15872k
  251. SUPPORTED_DEVICES += n5q
  252. endef
  253. TARGET_DEVICES += alfa-network_n5q
  254. define Device/alfa-network_pi-wifi4
  255. SOC := qca9531
  256. DEVICE_VENDOR := ALFA Network
  257. DEVICE_MODEL := Pi-WiFi4
  258. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport -swconfig
  259. IMAGE_SIZE := 15872k
  260. endef
  261. TARGET_DEVICES += alfa-network_pi-wifi4
  262. define Device/alfa-network_r36a
  263. SOC := qca9531
  264. DEVICE_VENDOR := ALFA Network
  265. DEVICE_MODEL := R36A
  266. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  267. IMAGE_SIZE := 15872k
  268. SUPPORTED_DEVICES += r36a
  269. endef
  270. TARGET_DEVICES += alfa-network_r36a
  271. define Device/alfa-network_tube-2hq
  272. SOC := qca9531
  273. DEVICE_VENDOR := ALFA Network
  274. DEVICE_MODEL := Tube-2HQ
  275. DEVICE_PACKAGES := rssileds -swconfig
  276. IMAGE_SIZE := 15872k
  277. SUPPORTED_DEVICES += tube-2hq
  278. endef
  279. TARGET_DEVICES += alfa-network_tube-2hq
  280. define Device/allnet_all-wap02860ac
  281. $(Device/senao_loader_okli)
  282. SOC := qca9558
  283. DEVICE_VENDOR := ALLNET
  284. DEVICE_MODEL := ALL-WAP02860AC
  285. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  286. IMAGE_SIZE := 11584k
  287. LOADER_FLASH_OFFS := 0x220000
  288. SENAO_IMGNAME := senao-allwap02860ac
  289. endef
  290. TARGET_DEVICES += allnet_all-wap02860ac
  291. define Device/araknis_an-300-ap-i-n
  292. $(Device/senao_loader_okli)
  293. SOC := ar9344
  294. DEVICE_VENDOR := Araknis
  295. DEVICE_MODEL := AN-300-AP-I-N
  296. IMAGE_SIZE := 12096k
  297. LOADER_FLASH_OFFS := 0x220000
  298. SENAO_IMGNAME := senao-an300
  299. endef
  300. TARGET_DEVICES += araknis_an-300-ap-i-n
  301. define Device/araknis_an-500-ap-i-ac
  302. $(Device/senao_loader_okli)
  303. SOC := qca9557
  304. DEVICE_VENDOR := Araknis
  305. DEVICE_MODEL := AN-500-AP-I-AC
  306. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  307. IMAGE_SIZE := 11584k
  308. LOADER_FLASH_OFFS := 0x220000
  309. SENAO_IMGNAME := senao-generic-v1-an500
  310. endef
  311. TARGET_DEVICES += araknis_an-500-ap-i-ac
  312. define Device/araknis_an-700-ap-i-ac
  313. $(Device/senao_loader_okli)
  314. SOC := qca9558
  315. DEVICE_VENDOR := Araknis
  316. DEVICE_MODEL := AN-700-AP-I-AC
  317. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  318. IMAGE_SIZE := 11584k
  319. LOADER_FLASH_OFFS := 0x220000
  320. SENAO_IMGNAME := senao-generic-v1-an700
  321. endef
  322. TARGET_DEVICES += araknis_an-700-ap-i-ac
  323. define Device/arduino_yun
  324. SOC := ar9331
  325. DEVICE_VENDOR := Arduino
  326. DEVICE_MODEL := Yun
  327. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-ledtrig-usbport \
  328. kmod-usb-storage block-mount -swconfig
  329. IMAGE_SIZE := 15936k
  330. SUPPORTED_DEVICES += arduino-yun
  331. endef
  332. TARGET_DEVICES += arduino_yun
  333. define Device/aruba_ap-105
  334. SOC := ar7161
  335. DEVICE_VENDOR := Aruba
  336. DEVICE_MODEL := AP-105
  337. IMAGE_SIZE := 16000k
  338. DEVICE_PACKAGES := kmod-i2c-gpio kmod-tpm-i2c-atmel
  339. endef
  340. TARGET_DEVICES += aruba_ap-105
  341. define Device/asus_pl-ac56
  342. SOC := qca9563
  343. DEVICE_VENDOR := ASUS
  344. DEVICE_MODEL := PL-AC56
  345. DEVICE_VARIANT := A1
  346. IMAGE_SIZE := 15488k
  347. IMAGES += factory.bin
  348. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  349. append-rootfs | pad-rootfs
  350. DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
  351. endef
  352. TARGET_DEVICES += asus_pl-ac56
  353. define Device/asus_rp-ac51
  354. SOC := qca9531
  355. DEVICE_VENDOR := ASUS
  356. DEVICE_MODEL := RP-AC51
  357. IMAGE_SIZE := 16000k
  358. IMAGES += factory.bin
  359. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  360. append-rootfs | pad-rootfs
  361. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct \
  362. -swconfig
  363. endef
  364. TARGET_DEVICES += asus_rp-ac51
  365. define Device/asus_rp-ac66
  366. SOC := qca9563
  367. DEVICE_VENDOR := ASUS
  368. DEVICE_MODEL := RP-AC66
  369. IMAGE_SIZE := 16000k
  370. IMAGES += factory.bin
  371. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  372. append-rootfs | pad-rootfs
  373. DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct \
  374. rssileds -swconfig
  375. endef
  376. TARGET_DEVICES += asus_rp-ac66
  377. define Device/atheros_db120
  378. $(Device/loader-okli-uimage)
  379. SOC := ar9344
  380. DEVICE_VENDOR := Atheros
  381. DEVICE_MODEL := DB120
  382. DEVICE_PACKAGES := kmod-usb2
  383. IMAGE_SIZE := 7808k
  384. SUPPORTED_DEVICES += db120
  385. LOADER_FLASH_OFFS := 0x50000
  386. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  387. IMAGES += factory.bin
  388. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  389. append-rootfs | pad-rootfs | check-size | pad-to 6336k | \
  390. append-loader-okli-uimage $(1) | pad-to 64k
  391. endef
  392. TARGET_DEVICES += atheros_db120
  393. define Device/avm
  394. DEVICE_VENDOR := AVM
  395. KERNEL := kernel-bin | append-dtb | lzma | eva-image
  396. KERNEL_INITRAMFS := $$(KERNEL)
  397. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
  398. append-squashfs-fakeroot-be | pad-to 256 | append-rootfs | pad-rootfs | \
  399. check-size | append-metadata
  400. DEVICE_PACKAGES := fritz-tffs
  401. endef
  402. define Device/avm_fritz1750e
  403. $(Device/avm)
  404. SOC := qca9556
  405. IMAGE_SIZE := 15232k
  406. DEVICE_MODEL := FRITZ!WLAN Repeater 1750E
  407. DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
  408. ath10k-firmware-qca988x-ct -swconfig
  409. endef
  410. TARGET_DEVICES += avm_fritz1750e
  411. define Device/avm_fritz300e
  412. $(Device/avm)
  413. SOC := ar7242
  414. IMAGE_SIZE := 15232k
  415. DEVICE_MODEL := FRITZ!WLAN Repeater 300E
  416. DEVICE_PACKAGES += rssileds -swconfig
  417. SUPPORTED_DEVICES += fritz300e
  418. endef
  419. TARGET_DEVICES += avm_fritz300e
  420. define Device/avm_fritz4020
  421. $(Device/avm)
  422. SOC := qca9561
  423. IMAGE_SIZE := 15232k
  424. DEVICE_MODEL := FRITZ!Box 4020
  425. SUPPORTED_DEVICES += fritz4020
  426. endef
  427. TARGET_DEVICES += avm_fritz4020
  428. define Device/avm_fritz450e
  429. $(Device/avm)
  430. SOC := qca9556
  431. IMAGE_SIZE := 15232k
  432. DEVICE_MODEL := FRITZ!WLAN Repeater 450E
  433. SUPPORTED_DEVICES += fritz450e
  434. endef
  435. TARGET_DEVICES += avm_fritz450e
  436. define Device/avm_fritzdvbc
  437. $(Device/avm)
  438. SOC := qca9556
  439. IMAGE_SIZE := 15232k
  440. DEVICE_MODEL := FRITZ!WLAN Repeater DVB-C
  441. DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
  442. ath10k-firmware-qca988x-ct -swconfig
  443. endef
  444. TARGET_DEVICES += avm_fritzdvbc
  445. define Device/belkin_f9x-v2
  446. $(Device/loader-okli-uimage)
  447. SOC := qca9558
  448. DEVICE_VENDOR := Belkin
  449. IMAGE_SIZE := 14464k
  450. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2 \
  451. kmod-usb3 kmod-usb-ledtrig-usbport
  452. LOADER_FLASH_OFFS := 0x50000
  453. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  454. IMAGES += factory.bin
  455. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  456. append-rootfs | pad-rootfs | check-size | \
  457. edimax-headers $$$$(EDIMAX_HEADER_MAGIC) $$$$(EDIMAX_HEADER_MODEL) | \
  458. pad-to $$$$(BLOCKSIZE)
  459. endef
  460. define Device/belkin_f9j1108-v2
  461. $(Device/belkin_f9x-v2)
  462. DEVICE_MODEL := F9J1108 v2 (AC1750 DB Wi-Fi)
  463. EDIMAX_HEADER_MAGIC := F9J1108v1
  464. EDIMAX_HEADER_MODEL := BR-6679BAC
  465. endef
  466. TARGET_DEVICES += belkin_f9j1108-v2
  467. define Device/belkin_f9k1115-v2
  468. $(Device/belkin_f9x-v2)
  469. DEVICE_MODEL := F9K1115 v2 (AC1750 DB Wi-Fi)
  470. EDIMAX_HEADER_MAGIC := eDiMaX
  471. EDIMAX_HEADER_MODEL := F9K1115V2
  472. endef
  473. TARGET_DEVICES += belkin_f9k1115-v2
  474. define Device/buffalo_bhr-4grv
  475. $(Device/buffalo_common)
  476. SOC := ar7242
  477. DEVICE_MODEL := BHR-4GRV
  478. BUFFALO_PRODUCT := BHR-4GRV
  479. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  480. IMAGE_SIZE := 32256k
  481. SUPPORTED_DEVICES += wzr-hp-g450h
  482. endef
  483. TARGET_DEVICES += buffalo_bhr-4grv
  484. define Device/buffalo_bhr-4grv2
  485. SOC := qca9557
  486. DEVICE_VENDOR := Buffalo
  487. DEVICE_MODEL := BHR-4GRV2
  488. IMAGE_SIZE := 16000k
  489. endef
  490. TARGET_DEVICES += buffalo_bhr-4grv2
  491. define Device/buffalo_wzr_ar7161
  492. $(Device/buffalo_common)
  493. SOC := ar7161
  494. BUFFALO_PRODUCT := WZR-HP-AG300H
  495. DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
  496. kmod-leds-reset kmod-owl-loader
  497. IMAGE_SIZE := 32320k
  498. SUPPORTED_DEVICES += wzr-hp-ag300h
  499. endef
  500. define Device/buffalo_wzr-600dhp
  501. $(Device/buffalo_wzr_ar7161)
  502. DEVICE_MODEL := WZR-600DHP
  503. endef
  504. TARGET_DEVICES += buffalo_wzr-600dhp
  505. define Device/buffalo_wzr-hp-ag300h
  506. $(Device/buffalo_wzr_ar7161)
  507. DEVICE_MODEL := WZR-HP-AG300H
  508. endef
  509. TARGET_DEVICES += buffalo_wzr-hp-ag300h
  510. define Device/buffalo_wzr-hp-g300nh
  511. $(Device/buffalo_common)
  512. SOC := ar9132
  513. BUFFALO_PRODUCT := WZR-HP-G300NH
  514. BUFFALO_HWVER := 1
  515. DEVICE_PACKAGES := kmod-gpio-cascade kmod-mux-gpio kmod-usb2 kmod-usb-ledtrig-usbport
  516. BLOCKSIZE := 128k
  517. IMAGE_SIZE := 32128k
  518. SUPPORTED_DEVICES += wzr-hp-g300nh
  519. endef
  520. define Device/buffalo_wzr-hp-g300nh-rb
  521. $(Device/buffalo_wzr-hp-g300nh)
  522. DEVICE_MODEL := WZR-HP-G300NH (RTL8366RB switch)
  523. endef
  524. TARGET_DEVICES += buffalo_wzr-hp-g300nh-rb
  525. define Device/buffalo_wzr-hp-g300nh-s
  526. $(Device/buffalo_wzr-hp-g300nh)
  527. DEVICE_MODEL := WZR-HP-G300NH (RTL8366S switch)
  528. DEVICE_PACKAGES += kmod-switch-rtl8366rb
  529. endef
  530. TARGET_DEVICES += buffalo_wzr-hp-g300nh-s
  531. define Device/buffalo_wzr-hp-g302h-a1a0
  532. $(Device/buffalo_common)
  533. SOC := ar7242
  534. DEVICE_MODEL := WZR-HP-G302H
  535. DEVICE_VARIANT := A1A0
  536. BUFFALO_PRODUCT := WZR-HP-G302H
  537. BUFFALO_HWVER := 4
  538. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  539. IMAGE_SIZE := 32128k
  540. SUPPORTED_DEVICES += wzr-hp-g300nh2
  541. endef
  542. TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
  543. define Device/buffalo_wzr-hp-g450h
  544. $(Device/buffalo_common)
  545. SOC := ar7242
  546. DEVICE_MODEL := WZR-HP-G450H/WZR-450HP
  547. BUFFALO_PRODUCT := WZR-HP-G450H
  548. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  549. IMAGE_SIZE := 32256k
  550. SUPPORTED_DEVICES += wzr-hp-g450h
  551. endef
  552. TARGET_DEVICES += buffalo_wzr-hp-g450h
  553. define Device/comfast_cf-e110n-v2
  554. SOC := qca9533
  555. DEVICE_VENDOR := COMFAST
  556. DEVICE_MODEL := CF-E110N
  557. DEVICE_VARIANT := v2
  558. DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
  559. IMAGE_SIZE := 16192k
  560. endef
  561. TARGET_DEVICES += comfast_cf-e110n-v2
  562. define Device/comfast_cf-e120a-v3
  563. SOC := ar9344
  564. DEVICE_VENDOR := COMFAST
  565. DEVICE_MODEL := CF-E120A
  566. DEVICE_VARIANT := v3
  567. DEVICE_PACKAGES := rssileds -uboot-envtools
  568. IMAGE_SIZE := 8000k
  569. endef
  570. TARGET_DEVICES += comfast_cf-e120a-v3
  571. define Device/comfast_cf-e130n-v2
  572. SOC := qca9531
  573. DEVICE_VENDOR := COMFAST
  574. DEVICE_MODEL := CF-E130N
  575. DEVICE_VARIANT := v2
  576. DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
  577. IMAGE_SIZE := 7936k
  578. endef
  579. TARGET_DEVICES += comfast_cf-e130n-v2
  580. define Device/comfast_cf-e313ac
  581. SOC := qca9531
  582. DEVICE_VENDOR := COMFAST
  583. DEVICE_MODEL := CF-E313AC
  584. DEVICE_PACKAGES := rssileds kmod-ath10k-ct-smallbuffers \
  585. ath10k-firmware-qca9888-ct -swconfig -uboot-envtools
  586. IMAGE_SIZE := 7936k
  587. endef
  588. TARGET_DEVICES += comfast_cf-e313ac
  589. define Device/comfast_cf-e314n-v2
  590. SOC := qca9531
  591. DEVICE_VENDOR := COMFAST
  592. DEVICE_MODEL := CF-E314N
  593. DEVICE_VARIANT := v2
  594. DEVICE_PACKAGES := rssileds
  595. IMAGE_SIZE := 7936k
  596. endef
  597. TARGET_DEVICES += comfast_cf-e314n-v2
  598. define Device/comfast_cf-e375ac
  599. SOC := qca9563
  600. DEVICE_VENDOR := COMFAST
  601. DEVICE_MODEL := CF-E375AC
  602. DEVICE_PACKAGES := kmod-ath10k-ct \
  603. ath10k-firmware-qca9888-ct -uboot-envtools
  604. IMAGE_SIZE := 16000k
  605. endef
  606. TARGET_DEVICES += comfast_cf-e375ac
  607. define Device/comfast_cf-e5
  608. SOC := qca9531
  609. DEVICE_VENDOR := COMFAST
  610. DEVICE_MODEL := CF-E5/E7
  611. DEVICE_PACKAGES := rssileds kmod-usb2 kmod-usb-net-qmi-wwan -swconfig \
  612. -uboot-envtools
  613. IMAGE_SIZE := 16192k
  614. endef
  615. TARGET_DEVICES += comfast_cf-e5
  616. define Device/comfast_cf-e560ac
  617. SOC := qca9531
  618. DEVICE_VENDOR := COMFAST
  619. DEVICE_MODEL := CF-E560AC
  620. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
  621. IMAGE_SIZE := 16128k
  622. endef
  623. TARGET_DEVICES += comfast_cf-e560ac
  624. define Device/comfast_cf-ew72
  625. SOC := qca9531
  626. DEVICE_VENDOR := COMFAST
  627. DEVICE_MODEL := CF-EW72
  628. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
  629. -uboot-envtools -swconfig
  630. IMAGE_SIZE := 16192k
  631. endef
  632. TARGET_DEVICES += comfast_cf-ew72
  633. define Device/comfast_cf-wr650ac-v1
  634. SOC := qca9558
  635. DEVICE_VENDOR := COMFAST
  636. DEVICE_MODEL := CF-WR650AC
  637. DEVICE_VARIANT := v1
  638. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  639. IMAGE_SIZE := 16128k
  640. endef
  641. TARGET_DEVICES += comfast_cf-wr650ac-v1
  642. define Device/comfast_cf-wr650ac-v2
  643. SOC := qca9558
  644. DEVICE_VENDOR := COMFAST
  645. DEVICE_MODEL := CF-WR650AC
  646. DEVICE_VARIANT := v2
  647. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  648. IMAGE_SIZE := 16000k
  649. endef
  650. TARGET_DEVICES += comfast_cf-wr650ac-v2
  651. define Device/comfast_cf-wr752ac-v1
  652. SOC := qca9531
  653. DEVICE_VENDOR := COMFAST
  654. DEVICE_MODEL := CF-WR752AC
  655. DEVICE_VARIANT := v1
  656. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
  657. -uboot-envtools
  658. IMAGE_SIZE := 16192k
  659. endef
  660. TARGET_DEVICES += comfast_cf-wr752ac-v1
  661. define Device/compex_wpj344-16m
  662. SOC := ar9344
  663. DEVICE_PACKAGES := kmod-usb2
  664. IMAGE_SIZE := 16128k
  665. DEVICE_VENDOR := Compex
  666. DEVICE_MODEL := WPJ344
  667. DEVICE_VARIANT := 16M
  668. SUPPORTED_DEVICES += wpj344
  669. IMAGES += cpximg-6a08.bin
  670. IMAGE/cpximg-6a08.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x690 3
  671. endef
  672. TARGET_DEVICES += compex_wpj344-16m
  673. define Device/compex_wpj531-16m
  674. SOC := qca9531
  675. DEVICE_PACKAGES := kmod-usb2
  676. IMAGE_SIZE := 16128k
  677. DEVICE_VENDOR := Compex
  678. DEVICE_MODEL := WPJ531
  679. DEVICE_VARIANT := 16M
  680. SUPPORTED_DEVICES += wpj531
  681. IMAGES += cpximg-7a03.bin cpximg-7a04.bin cpximg-7a06.bin cpximg-7a07.bin
  682. IMAGE/cpximg-7a03.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x68a 2
  683. IMAGE/cpximg-7a04.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
  684. IMAGE/cpximg-7a06.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
  685. IMAGE/cpximg-7a07.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
  686. endef
  687. TARGET_DEVICES += compex_wpj531-16m
  688. define Device/compex_wpj558-16m
  689. SOC := qca9558
  690. IMAGE_SIZE := 16128k
  691. DEVICE_VENDOR := Compex
  692. DEVICE_MODEL := WPJ558
  693. DEVICE_VARIANT := 16M
  694. SUPPORTED_DEVICES += wpj558
  695. IMAGES += cpximg-6a07.bin
  696. IMAGE/cpximg-6a07.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  697. append-rootfs | pad-rootfs | mkmylofw_16m 0x691 3
  698. DEVICE_PACKAGES := kmod-gpio-beeper
  699. endef
  700. TARGET_DEVICES += compex_wpj558-16m
  701. define Device/compex_wpj563
  702. SOC := qca9563
  703. DEVICE_PACKAGES := kmod-usb2 kmod-usb3
  704. IMAGE_SIZE := 16128k
  705. DEVICE_VENDOR := Compex
  706. DEVICE_MODEL := WPJ563
  707. SUPPORTED_DEVICES += wpj563
  708. IMAGES += cpximg-7a02.bin
  709. IMAGE/cpximg-7a02.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x694 2
  710. endef
  711. TARGET_DEVICES += compex_wpj563
  712. define Device/devolo_dlan-pro-1200plus-ac
  713. SOC := ar9344
  714. DEVICE_VENDOR := Devolo
  715. DEVICE_MODEL := dLAN pro 1200+ WiFi ac
  716. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  717. IMAGE_SIZE := 15872k
  718. endef
  719. TARGET_DEVICES += devolo_dlan-pro-1200plus-ac
  720. define Device/devolo_dvl1200e
  721. SOC := qca9558
  722. DEVICE_VENDOR := devolo
  723. DEVICE_MODEL := WiFi pro 1200e
  724. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  725. IMAGE_SIZE := 15936k
  726. endef
  727. TARGET_DEVICES += devolo_dvl1200e
  728. define Device/devolo_dvl1200i
  729. SOC := qca9558
  730. DEVICE_VENDOR := devolo
  731. DEVICE_MODEL := WiFi pro 1200i
  732. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  733. IMAGE_SIZE := 15936k
  734. endef
  735. TARGET_DEVICES += devolo_dvl1200i
  736. define Device/devolo_dvl1750c
  737. SOC := qca9558
  738. DEVICE_VENDOR := devolo
  739. DEVICE_MODEL := WiFi pro 1750c
  740. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  741. IMAGE_SIZE := 15936k
  742. endef
  743. TARGET_DEVICES += devolo_dvl1750c
  744. define Device/devolo_dvl1750e
  745. SOC := qca9558
  746. DEVICE_VENDOR := devolo
  747. DEVICE_MODEL := WiFi pro 1750e
  748. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  749. IMAGE_SIZE := 15936k
  750. endef
  751. TARGET_DEVICES += devolo_dvl1750e
  752. define Device/devolo_dvl1750i
  753. SOC := qca9558
  754. DEVICE_VENDOR := devolo
  755. DEVICE_MODEL := WiFi pro 1750i
  756. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  757. IMAGE_SIZE := 15936k
  758. endef
  759. TARGET_DEVICES += devolo_dvl1750i
  760. define Device/devolo_dvl1750x
  761. SOC := qca9558
  762. DEVICE_VENDOR := devolo
  763. DEVICE_MODEL := WiFi pro 1750x
  764. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  765. IMAGE_SIZE := 15936k
  766. endef
  767. TARGET_DEVICES += devolo_dvl1750x
  768. define Device/devolo_magic-2-wifi
  769. SOC := ar9344
  770. DEVICE_VENDOR := Devolo
  771. DEVICE_MODEL := Magic 2 WiFi
  772. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  773. IMAGE_SIZE := 15872k
  774. endef
  775. TARGET_DEVICES += devolo_magic-2-wifi
  776. define Device/dlink_dap-13xx
  777. SOC := qca9533
  778. DEVICE_VENDOR := D-Link
  779. DEVICE_PACKAGES += rssileds
  780. IMAGE_SIZE := 7936k
  781. IMAGES += factory.bin
  782. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  783. append-rootfs | pad-rootfs | check-size | mkdapimg2 0xE0000
  784. endef
  785. define Device/dlink_dap-1330-a1
  786. $(Device/dlink_dap-13xx)
  787. DEVICE_MODEL := DAP-1330
  788. DEVICE_VARIANT := A1
  789. DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1330
  790. SUPPORTED_DEVICES += dap-1330-a1
  791. endef
  792. TARGET_DEVICES += dlink_dap-1330-a1
  793. define Device/dlink_dap-1365-a1
  794. $(Device/dlink_dap-13xx)
  795. DEVICE_MODEL := DAP-1365
  796. DEVICE_VARIANT := A1
  797. DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1365
  798. endef
  799. TARGET_DEVICES += dlink_dap-1365-a1
  800. define Device/dlink_dap-2xxx
  801. IMAGES += factory.img
  802. IMAGE/factory.img := append-kernel | pad-offset 6144k 160 | \
  803. append-rootfs | wrgg-pad-rootfs | mkwrggimg | check-size
  804. IMAGE/sysupgrade.bin := append-kernel | mkwrggimg | \
  805. pad-to $$$$(BLOCKSIZE) | append-rootfs | wrgg-pad-rootfs | \
  806. check-size | append-metadata
  807. KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
  808. KERNEL_INITRAMFS := $$(KERNEL) | mkwrggimg
  809. endef
  810. define Device/dlink_dap-2230-a1
  811. $(Device/dlink_dap-2xxx)
  812. SOC := qca9533
  813. DEVICE_VENDOR := D-Link
  814. DEVICE_MODEL := DAP-2230
  815. DEVICE_VARIANT := A1
  816. IMAGE_SIZE := 15232k
  817. DAP_SIGNATURE := wapn31_dkbs_dap2230
  818. endef
  819. TARGET_DEVICES += dlink_dap-2230-a1
  820. define Device/dlink_dap-2660-a1
  821. $(Device/dlink_dap-2xxx)
  822. SOC := qca9557
  823. DEVICE_VENDOR := D-Link
  824. DEVICE_MODEL := DAP-2660
  825. DEVICE_VARIANT := A1
  826. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  827. IMAGE_SIZE := 15232k
  828. DAP_SIGNATURE := wapac09_dkbs_dap2660
  829. endef
  830. TARGET_DEVICES += dlink_dap-2660-a1
  831. define Device/dlink_dap-2680-a1
  832. $(Device/dlink_dap-2xxx)
  833. SOC := qca9558
  834. DEVICE_VENDOR := D-Link
  835. DEVICE_MODEL := DAP-2680
  836. DEVICE_VARIANT := A1
  837. DEVICE_PACKAGES := ath10k-firmware-qca9984-ct kmod-ath10k-ct
  838. IMAGE_SIZE := 15232k
  839. DAP_SIGNATURE := wapac36_dkbs_dap2680
  840. endef
  841. TARGET_DEVICES += dlink_dap-2680-a1
  842. define Device/dlink_dap-2695-a1
  843. $(Device/dlink_dap-2xxx)
  844. SOC := qca9558
  845. DEVICE_VENDOR := D-Link
  846. DEVICE_MODEL := DAP-2695
  847. DEVICE_VARIANT := A1
  848. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  849. IMAGE_SIZE := 15360k
  850. DAP_SIGNATURE := wapac02_dkbs_dap2695
  851. SUPPORTED_DEVICES += dap-2695-a1
  852. endef
  853. TARGET_DEVICES += dlink_dap-2695-a1
  854. define Device/dlink_dap-3320-a1
  855. $(Device/dlink_dap-2xxx)
  856. SOC := qca9533
  857. DEVICE_VENDOR := D-Link
  858. DEVICE_MODEL := DAP-3320
  859. DEVICE_VARIANT := A1
  860. IMAGE_SIZE := 15296k
  861. DAP_SIGNATURE := wapn29_dkbs_dap3320
  862. endef
  863. TARGET_DEVICES += dlink_dap-3320-a1
  864. define Device/dlink_dap-3662-a1
  865. $(Device/dlink_dap-2xxx)
  866. SOC := qca9558
  867. DEVICE_VENDOR := D-Link
  868. DEVICE_MODEL := DAP-3662
  869. DEVICE_VARIANT := A1
  870. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  871. IMAGE_SIZE := 15296k
  872. DAP_SIGNATURE := wapac11_dkbs_dap3662
  873. endef
  874. TARGET_DEVICES += dlink_dap-3662-a1
  875. define Device/dlink_dch-g020-a1
  876. SOC := qca9531
  877. DEVICE_VENDOR := D-Link
  878. DEVICE_MODEL := DCH-G020
  879. DEVICE_VARIANT := A1
  880. DEVICE_PACKAGES := kmod-gpio-pca953x kmod-i2c-gpio kmod-usb2 kmod-usb-acm
  881. IMAGES += factory.bin
  882. IMAGE_SIZE := 14784k
  883. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  884. append-rootfs | pad-rootfs | check-size | mkdapimg2 0x20000
  885. DAP_SIGNATURE := HONEYBEE-FIRMWARE-DCH-G020
  886. endef
  887. TARGET_DEVICES += dlink_dch-g020-a1
  888. define Device/dlink_dir-505
  889. SOC := ar9330
  890. DEVICE_VENDOR := D-Link
  891. DEVICE_MODEL := DIR-505
  892. IMAGE_SIZE := 7680k
  893. DEVICE_PACKAGES := kmod-usb-chipidea2
  894. SUPPORTED_DEVICES += dir-505-a1
  895. endef
  896. TARGET_DEVICES += dlink_dir-505
  897. define Device/dlink_dir-825-b1
  898. SOC := ar7161
  899. DEVICE_VENDOR := D-Link
  900. DEVICE_MODEL := DIR-825
  901. DEVICE_VARIANT := B1
  902. IMAGE_SIZE := 6208k
  903. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
  904. check-size | append-metadata
  905. DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
  906. kmod-leds-reset kmod-owl-loader kmod-switch-rtl8366s
  907. SUPPORTED_DEVICES += dir-825-b1
  908. endef
  909. TARGET_DEVICES += dlink_dir-825-b1
  910. define Device/dlink_dir-825-c1
  911. SOC := ar9344
  912. DEVICE_VENDOR := D-Link
  913. DEVICE_MODEL := DIR-825
  914. DEVICE_VARIANT := C1
  915. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset \
  916. kmod-owl-loader
  917. SUPPORTED_DEVICES += dir-825-c1
  918. IMAGE_SIZE := 15936k
  919. IMAGES := factory.bin sysupgrade.bin
  920. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
  921. pad-rootfs
  922. IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
  923. append-string 00DB120AR9344-RT-101214-00 | check-size
  924. IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
  925. endef
  926. TARGET_DEVICES += dlink_dir-825-c1
  927. define Device/dlink_dir-835-a1
  928. SOC := ar9344
  929. DEVICE_VENDOR := D-Link
  930. DEVICE_MODEL := DIR-835
  931. DEVICE_VARIANT := A1
  932. DEVICE_PACKAGES := kmod-usb2 kmod-leds-reset kmod-owl-loader
  933. SUPPORTED_DEVICES += dir-835-a1
  934. IMAGE_SIZE := 15936k
  935. IMAGES := factory.bin sysupgrade.bin
  936. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
  937. pad-rootfs
  938. IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
  939. append-string 00DB120AR9344-RT-101214-00 | check-size
  940. IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
  941. endef
  942. TARGET_DEVICES += dlink_dir-835-a1
  943. define Device/dlink_dir-842-c
  944. SOC := qca9563
  945. DEVICE_VENDOR := D-Link
  946. DEVICE_MODEL := DIR-842
  947. KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
  948. KERNEL_INITRAMFS := $$(KERNEL) | seama
  949. IMAGES += factory.bin
  950. SEAMA_MTDBLOCK := 5
  951. SEAMA_SIGNATURE := wrgac65_dlink.2015_dir842
  952. # 64 bytes offset:
  953. # - 28 bytes seama_header
  954. # - 36 bytes of META data (4-bytes aligned)
  955. IMAGE/default := append-kernel | uImage lzma | \
  956. pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
  957. IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
  958. check-size | append-metadata
  959. IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
  960. seama-seal | check-size
  961. IMAGE_SIZE := 15680k
  962. endef
  963. define Device/dlink_dir-842-c1
  964. $(Device/dlink_dir-842-c)
  965. DEVICE_VARIANT := C1
  966. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  967. endef
  968. TARGET_DEVICES += dlink_dir-842-c1
  969. define Device/dlink_dir-842-c2
  970. $(Device/dlink_dir-842-c)
  971. DEVICE_VARIANT := C2
  972. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
  973. endef
  974. TARGET_DEVICES += dlink_dir-842-c2
  975. define Device/dlink_dir-842-c3
  976. $(Device/dlink_dir-842-c)
  977. DEVICE_VARIANT := C3
  978. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  979. endef
  980. TARGET_DEVICES += dlink_dir-842-c3
  981. define Device/dlink_dir-859-a1
  982. $(Device/seama)
  983. SOC := qca9563
  984. DEVICE_VENDOR := D-Link
  985. DEVICE_MODEL := DIR-859
  986. DEVICE_VARIANT := A1
  987. IMAGE_SIZE := 15872k
  988. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
  989. SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
  990. endef
  991. TARGET_DEVICES += dlink_dir-859-a1
  992. define Device/elecom_wrc-1750ghbk2-i
  993. SOC := qca9563
  994. DEVICE_VENDOR := ELECOM
  995. DEVICE_MODEL := WRC-1750GHBK2-I/C
  996. IMAGE_SIZE := 15808k
  997. KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
  998. add-elecom-factory-initramfs RN68 WRC-1750GHBK2
  999. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1000. endef
  1001. TARGET_DEVICES += elecom_wrc-1750ghbk2-i
  1002. define Device/elecom_wrc-300ghbk2-i
  1003. SOC := qca9563
  1004. DEVICE_VENDOR := ELECOM
  1005. DEVICE_MODEL := WRC-300GHBK2-I
  1006. IMAGE_SIZE := 7616k
  1007. KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
  1008. add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
  1009. endef
  1010. TARGET_DEVICES += elecom_wrc-300ghbk2-i
  1011. define Device/embeddedwireless_balin
  1012. SOC := ar9344
  1013. DEVICE_VENDOR := Embedded Wireless
  1014. DEVICE_MODEL := Balin
  1015. DEVICE_PACKAGES := kmod-usb-chipidea2
  1016. IMAGE_SIZE := 16000k
  1017. endef
  1018. TARGET_DEVICES += embeddedwireless_balin
  1019. define Device/embeddedwireless_dorin
  1020. SOC := ar9331
  1021. DEVICE_VENDOR := Embedded Wireless
  1022. DEVICE_MODEL := Dorin
  1023. DEVICE_PACKAGES := kmod-usb-chipidea2
  1024. IMAGE_SIZE := 16000k
  1025. endef
  1026. TARGET_DEVICES += embeddedwireless_dorin
  1027. define Device/engenius_eap1200h
  1028. $(Device/senao_loader_okli)
  1029. SOC := qca9557
  1030. DEVICE_VENDOR := EnGenius
  1031. DEVICE_MODEL := EAP1200H
  1032. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  1033. IMAGE_SIZE := 11584k
  1034. LOADER_FLASH_OFFS := 0x220000
  1035. SENAO_IMGNAME := ar71xx-generic-eap1200h
  1036. endef
  1037. TARGET_DEVICES += engenius_eap1200h
  1038. define Device/engenius_eap300-v2
  1039. $(Device/senao_loader_okli)
  1040. SOC := ar9341
  1041. DEVICE_VENDOR := EnGenius
  1042. DEVICE_MODEL := EAP300
  1043. DEVICE_VARIANT := v2
  1044. IMAGE_SIZE := 12096k
  1045. LOADER_FLASH_OFFS := 0x220000
  1046. SENAO_IMGNAME := senao-eap300v2
  1047. endef
  1048. TARGET_DEVICES += engenius_eap300-v2
  1049. define Device/engenius_eap600
  1050. $(Device/senao_loader_okli)
  1051. SOC := ar9344
  1052. DEVICE_VENDOR := EnGenius
  1053. DEVICE_MODEL := EAP600
  1054. IMAGE_SIZE := 12096k
  1055. LOADER_FLASH_OFFS := 0x220000
  1056. SENAO_IMGNAME := senao-eap600
  1057. endef
  1058. TARGET_DEVICES += engenius_eap600
  1059. define Device/engenius_ecb1200
  1060. SOC := qca9557
  1061. DEVICE_VENDOR := EnGenius
  1062. DEVICE_MODEL := ECB1200
  1063. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  1064. IMAGE_SIZE := 15680k
  1065. IMAGES += factory.bin
  1066. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1067. append-rootfs | pad-rootfs | check-size | \
  1068. senao-header -r 0x101 -p 0x6e -t 2
  1069. endef
  1070. TARGET_DEVICES += engenius_ecb1200
  1071. define Device/engenius_ecb1750
  1072. SOC := qca9558
  1073. DEVICE_VENDOR := EnGenius
  1074. DEVICE_MODEL := ECB1750
  1075. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  1076. IMAGE_SIZE := 15680k
  1077. IMAGES += factory.bin
  1078. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1079. append-rootfs | pad-rootfs | check-size | \
  1080. senao-header -r 0x101 -p 0x6d -t 2
  1081. endef
  1082. TARGET_DEVICES += engenius_ecb1750
  1083. define Device/engenius_ecb600
  1084. $(Device/senao_loader_okli)
  1085. SOC := ar9344
  1086. DEVICE_VENDOR := EnGenius
  1087. DEVICE_MODEL := ECB600
  1088. IMAGE_SIZE := 12096k
  1089. LOADER_FLASH_OFFS := 0x220000
  1090. SENAO_IMGNAME := senao-ecb600
  1091. endef
  1092. TARGET_DEVICES += engenius_ecb600
  1093. define Device/engenius_ens202ext-v1
  1094. $(Device/senao_loader_okli)
  1095. SOC := ar9341
  1096. DEVICE_VENDOR := EnGenius
  1097. DEVICE_MODEL := ENS202EXT
  1098. DEVICE_VARIANT := v1
  1099. DEVICE_PACKAGES := rssileds
  1100. IMAGE_SIZE := 12096k
  1101. LOADER_FLASH_OFFS := 0x220000
  1102. SENAO_IMGNAME := senao-ens202ext
  1103. endef
  1104. TARGET_DEVICES += engenius_ens202ext-v1
  1105. define Device/engenius_enstationac-v1
  1106. $(Device/senao_loader_okli)
  1107. SOC := qca9557
  1108. DEVICE_VENDOR := EnGenius
  1109. DEVICE_MODEL := EnStationAC
  1110. DEVICE_VARIANT := v1
  1111. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct rssileds
  1112. IMAGE_SIZE := 11584k
  1113. LOADER_FLASH_OFFS := 0x220000
  1114. SENAO_IMGNAME := ar71xx-generic-enstationac
  1115. endef
  1116. TARGET_DEVICES += engenius_enstationac-v1
  1117. define Device/engenius_epg5000
  1118. SOC := qca9558
  1119. DEVICE_VENDOR := EnGenius
  1120. DEVICE_MODEL := EPG5000
  1121. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
  1122. IMAGE_SIZE := 14656k
  1123. IMAGES += factory.dlf
  1124. IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1125. append-rootfs | pad-rootfs | check-size | \
  1126. senao-header -r 0x101 -p 0x71 -t 2
  1127. SUPPORTED_DEVICES += epg5000
  1128. endef
  1129. TARGET_DEVICES += engenius_epg5000
  1130. define Device/engenius_ews511ap
  1131. SOC := qca9531
  1132. DEVICE_VENDOR := EnGenius
  1133. DEVICE_MODEL := EWS511AP
  1134. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  1135. IMAGE_SIZE := 16000k
  1136. endef
  1137. TARGET_DEVICES += engenius_ews511ap
  1138. define Device/enterasys_ws-ap3705i
  1139. SOC := ar9344
  1140. DEVICE_VENDOR := Enterasys
  1141. DEVICE_MODEL := WS-AP3705i
  1142. IMAGE_SIZE := 30528k
  1143. endef
  1144. TARGET_DEVICES += enterasys_ws-ap3705i
  1145. define Device/etactica_eg200
  1146. SOC := ar9331
  1147. DEVICE_VENDOR := eTactica
  1148. DEVICE_MODEL := EG200
  1149. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
  1150. kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
  1151. IMAGE_SIZE := 16000k
  1152. SUPPORTED_DEVICES += rme-eg200
  1153. endef
  1154. TARGET_DEVICES += etactica_eg200
  1155. define Device/extreme-networks_ws-ap3805i
  1156. SOC := qca9557
  1157. BLOCKSIZE := 256k
  1158. DEVICE_VENDOR := Extreme Networks
  1159. DEVICE_MODEL := WS-AP3805i
  1160. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  1161. IMAGE_SIZE := 29440k
  1162. endef
  1163. TARGET_DEVICES += extreme-networks_ws-ap3805i
  1164. define Device/glinet_6408
  1165. $(Device/tplink-8mlzma)
  1166. SOC := ar9331
  1167. DEVICE_VENDOR := GL.iNet
  1168. DEVICE_MODEL := 6408
  1169. DEVICE_PACKAGES := kmod-usb-chipidea2
  1170. IMAGE_SIZE := 8000k
  1171. TPLINK_HWID := 0x08000001
  1172. IMAGES := sysupgrade.bin
  1173. SUPPORTED_DEVICES += gl-inet
  1174. endef
  1175. TARGET_DEVICES += glinet_6408
  1176. define Device/glinet_6416
  1177. $(Device/tplink-16mlzma)
  1178. SOC := ar9331
  1179. DEVICE_VENDOR := GL.iNet
  1180. DEVICE_MODEL := 6416
  1181. DEVICE_PACKAGES := kmod-usb-chipidea2
  1182. IMAGE_SIZE := 16192k
  1183. TPLINK_HWID := 0x08000001
  1184. IMAGES := sysupgrade.bin
  1185. SUPPORTED_DEVICES += gl-inet
  1186. endef
  1187. TARGET_DEVICES += glinet_6416
  1188. define Device/glinet_gl-ar150
  1189. SOC := ar9330
  1190. DEVICE_VENDOR := GL.iNet
  1191. DEVICE_MODEL := GL-AR150
  1192. DEVICE_PACKAGES := kmod-usb-chipidea2
  1193. IMAGE_SIZE := 16000k
  1194. SUPPORTED_DEVICES += gl-ar150
  1195. endef
  1196. TARGET_DEVICES += glinet_gl-ar150
  1197. define Device/glinet_gl-ar300m-common-nor
  1198. SOC := qca9531
  1199. DEVICE_VENDOR := GL.iNet
  1200. DEVICE_PACKAGES := kmod-usb2
  1201. IMAGE_SIZE := 16000k
  1202. SUPPORTED_DEVICES += gl-ar300m
  1203. endef
  1204. define Device/glinet_gl-ar300m-lite
  1205. $(Device/glinet_gl-ar300m-common-nor)
  1206. DEVICE_MODEL := GL-AR300M
  1207. DEVICE_VARIANT := Lite
  1208. endef
  1209. TARGET_DEVICES += glinet_gl-ar300m-lite
  1210. define Device/glinet_gl-ar300m16
  1211. $(Device/glinet_gl-ar300m-common-nor)
  1212. DEVICE_MODEL := GL-AR300M16
  1213. endef
  1214. TARGET_DEVICES += glinet_gl-ar300m16
  1215. define Device/glinet_gl-ar750
  1216. SOC := qca9531
  1217. DEVICE_VENDOR := GL.iNet
  1218. DEVICE_MODEL := GL-AR750
  1219. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
  1220. IMAGE_SIZE := 16000k
  1221. SUPPORTED_DEVICES += gl-ar750
  1222. endef
  1223. TARGET_DEVICES += glinet_gl-ar750
  1224. define Device/glinet_gl-mifi
  1225. SOC := ar9331
  1226. DEVICE_VENDOR := GL.iNET
  1227. DEVICE_MODEL := GL-MiFi
  1228. DEVICE_PACKAGES := kmod-usb-chipidea2
  1229. IMAGE_SIZE := 16000k
  1230. SUPPORTED_DEVICES += gl-mifi
  1231. endef
  1232. TARGET_DEVICES += glinet_gl-mifi
  1233. define Device/glinet_gl-usb150
  1234. SOC := ar9331
  1235. DEVICE_VENDOR := GL.iNET
  1236. DEVICE_MODEL := GL-USB150
  1237. IMAGE_SIZE := 16000k
  1238. SUPPORTED_DEVICES += gl-usb150
  1239. endef
  1240. TARGET_DEVICES += glinet_gl-usb150
  1241. define Device/glinet_gl-x300b
  1242. SOC := qca9531
  1243. DEVICE_VENDOR := GL.iNet
  1244. DEVICE_MODEL := GL-X300B
  1245. DEVICE_PACKAGES := kmod-usb2
  1246. IMAGE_SIZE := 16000k
  1247. endef
  1248. TARGET_DEVICES += glinet_gl-x300b
  1249. define Device/glinet_gl-x750
  1250. SOC := qca9531
  1251. DEVICE_VENDOR := GL.iNet
  1252. DEVICE_MODEL := GL-X750
  1253. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
  1254. IMAGE_SIZE := 16000k
  1255. endef
  1256. TARGET_DEVICES += glinet_gl-x750
  1257. define Device/hak5_lan-turtle
  1258. $(Device/tplink-16mlzma)
  1259. SOC := ar9331
  1260. DEVICE_VENDOR := Hak5
  1261. DEVICE_MODEL := LAN Turtle
  1262. TPLINK_HWID := 0x5348334c
  1263. IMAGES := sysupgrade.bin
  1264. DEVICE_PACKAGES := kmod-usb-chipidea2 -iwinfo -kmod-ath9k -swconfig \
  1265. -uboot-envtools -wpad-basic-wolfssl
  1266. SUPPORTED_DEVICES += lan-turtle
  1267. endef
  1268. TARGET_DEVICES += hak5_lan-turtle
  1269. define Device/hak5_packet-squirrel
  1270. $(Device/tplink-16mlzma)
  1271. SOC := ar9331
  1272. DEVICE_VENDOR := Hak5
  1273. DEVICE_MODEL := Packet Squirrel
  1274. TPLINK_HWID := 0x5351524c
  1275. IMAGES := sysupgrade.bin
  1276. DEVICE_PACKAGES := kmod-usb-chipidea2 -iwinfo -kmod-ath9k -swconfig \
  1277. -uboot-envtools -wpad-basic-wolfssl
  1278. SUPPORTED_DEVICES += packet-squirrel
  1279. endef
  1280. TARGET_DEVICES += hak5_packet-squirrel
  1281. define Device/hak5_wifi-pineapple-nano
  1282. $(Device/tplink-16mlzma)
  1283. SOC := ar9331
  1284. DEVICE_VENDOR := Hak5
  1285. DEVICE_MODEL := WiFi Pineapple NANO
  1286. TPLINK_HWID := 0x4e414e4f
  1287. IMAGES := sysupgrade.bin
  1288. DEVICE_PACKAGES := kmod-ath9k-htc kmod-usb-chipidea2 kmod-usb-storage \
  1289. -swconfig -uboot-envtools
  1290. SUPPORTED_DEVICES += wifi-pineapple-nano
  1291. endef
  1292. TARGET_DEVICES += hak5_wifi-pineapple-nano
  1293. define Device/hiwifi_hc6361
  1294. SOC := ar9331
  1295. DEVICE_VENDOR := HiWiFi
  1296. DEVICE_MODEL := HC6361
  1297. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2 kmod-usb-storage \
  1298. kmod-fs-ext4 kmod-nls-iso8859-1 e2fsprogs
  1299. BOARDNAME := HiWiFi-HC6361
  1300. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-to $$(BLOCKSIZE)
  1301. IMAGE_SIZE := 16128k
  1302. endef
  1303. TARGET_DEVICES += hiwifi_hc6361
  1304. define Device/iodata_etg3-r
  1305. SOC := ar9342
  1306. DEVICE_VENDOR := I-O DATA
  1307. DEVICE_MODEL := ETG3-R
  1308. IMAGE_SIZE := 7680k
  1309. DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic-wolfssl
  1310. endef
  1311. TARGET_DEVICES += iodata_etg3-r
  1312. define Device/iodata_wn-ac1167dgr
  1313. SOC := qca9557
  1314. DEVICE_VENDOR := I-O DATA
  1315. DEVICE_MODEL := WN-AC1167DGR
  1316. IMAGE_SIZE := 14656k
  1317. IMAGES += factory.bin
  1318. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1319. append-rootfs | pad-rootfs | check-size | \
  1320. senao-header -r 0x30a -p 0x61 -t 2
  1321. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1322. endef
  1323. TARGET_DEVICES += iodata_wn-ac1167dgr
  1324. define Device/iodata_wn-ac1600dgr
  1325. SOC := qca9557
  1326. DEVICE_VENDOR := I-O DATA
  1327. DEVICE_MODEL := WN-AC1600DGR
  1328. IMAGE_SIZE := 14656k
  1329. IMAGES += factory.bin
  1330. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1331. append-rootfs | pad-rootfs | check-size | \
  1332. senao-header -r 0x30a -p 0x60 -t 2 -v 200
  1333. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1334. endef
  1335. TARGET_DEVICES += iodata_wn-ac1600dgr
  1336. define Device/iodata_wn-ac1600dgr2
  1337. SOC := qca9557
  1338. DEVICE_VENDOR := I-O DATA
  1339. DEVICE_MODEL := WN-AC1600DGR2/DGR3
  1340. IMAGE_SIZE := 14656k
  1341. IMAGES += dgr2-dgr3-factory.bin
  1342. IMAGE/dgr2-dgr3-factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1343. append-rootfs | pad-rootfs | check-size | \
  1344. senao-header -r 0x30a -p 0x60 -t 2 -v 200
  1345. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1346. endef
  1347. TARGET_DEVICES += iodata_wn-ac1600dgr2
  1348. define Device/iodata_wn-ag300dgr
  1349. SOC := ar1022
  1350. DEVICE_VENDOR := I-O DATA
  1351. DEVICE_MODEL := WN-AG300DGR
  1352. IMAGE_SIZE := 15424k
  1353. IMAGES += factory.bin
  1354. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1355. append-rootfs | pad-rootfs | check-size | \
  1356. senao-header -r 0x30a -p 0x47 -t 2
  1357. DEVICE_PACKAGES := kmod-usb2
  1358. endef
  1359. TARGET_DEVICES += iodata_wn-ag300dgr
  1360. define Device/jjplus_ja76pf2
  1361. SOC := ar7161
  1362. DEVICE_VENDOR := jjPlus
  1363. DEVICE_MODEL := JA76PF2
  1364. DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-basic-wolfssl -uboot-envtools fconfig kmod-hwmon-lm75
  1365. LOADER_TYPE := bin
  1366. LOADER_FLASH_OFFS := 0x60000
  1367. COMPILE := loader-$(1).bin
  1368. COMPILE/loader-$(1).bin := loader-okli-compile | lzma | pad-to 128k
  1369. ARTIFACTS := loader.bin
  1370. ARTIFACT/loader.bin := append-loader-okli $(1)
  1371. IMAGES += firmware.bin
  1372. IMAGE/firmware.bin := append-kernel | uImage lzma -M 0x4f4b4c49 | pad-to $$$$(BLOCKSIZE) | \
  1373. append-rootfs | pad-rootfs | pad-to $$$$(BLOCKSIZE) | check-size
  1374. IMAGE/sysupgrade.bin := $$(IMAGE/firmware.bin) | \
  1375. sysupgrade-tar kernel=$$$$(KDIR)/loader-$(1).bin rootfs=$$$$@ | append-metadata
  1376. KERNEL := kernel-bin | append-dtb | lzma
  1377. KERNEL_INITRAMFS := kernel-bin | append-dtb
  1378. IMAGE_SIZE := 15872k
  1379. DEVICE_COMPAT_VERSION := 2.0
  1380. DEVICE_COMPAT_MESSAGE := Partition design has changed compared to older versions (19.07 and 21.02) \
  1381. due to kernel drivers restrictions. Upgrade via sysupgrade mechanism is one way operation. \
  1382. Downgrading OpenWrt version will involve usage of bootloader command line interface.
  1383. endef
  1384. TARGET_DEVICES += jjplus_ja76pf2
  1385. define Device/jjplus_jwap230
  1386. SOC := qca9558
  1387. DEVICE_VENDOR := jjPlus
  1388. DEVICE_MODEL := JWAP230
  1389. IMAGE_SIZE := 16000k
  1390. endef
  1391. TARGET_DEVICES += jjplus_jwap230
  1392. define Device/joyit_jt-or750i
  1393. SOC := qca9531
  1394. DEVICE_VENDOR := Joy-IT
  1395. DEVICE_MODEL := JT-OR750i
  1396. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  1397. IMAGE_SIZE := 16000k
  1398. endef
  1399. TARGET_DEVICES += joyit_jt-or750i
  1400. define Device/letv_lba-047-ch
  1401. $(Device/loader-okli-uimage)
  1402. SOC := qca9531
  1403. DEVICE_VENDOR := Letv
  1404. DEVICE_MODEL := LBA-047-CH
  1405. IMAGE_SIZE := 15936k
  1406. LOADER_FLASH_OFFS := 0x50000
  1407. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  1408. IMAGES += factory.bin
  1409. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1410. append-rootfs | pad-rootfs | check-size | pad-to 14528k | \
  1411. append-loader-okli-uimage $(1) | pad-to 64k
  1412. endef
  1413. TARGET_DEVICES += letv_lba-047-ch
  1414. define Device/librerouter_librerouter-v1
  1415. SOC := qca9558
  1416. DEVICE_VENDOR := Librerouter
  1417. DEVICE_MODEL := LibreRouter
  1418. DEVICE_VARIANT := v1
  1419. IMAGE_SIZE := 7936k
  1420. DEVICE_PACKAGES := kmod-usb2
  1421. endef
  1422. TARGET_DEVICES += librerouter_librerouter-v1
  1423. define Device/meraki_mr12
  1424. SOC := ar7242
  1425. DEVICE_VENDOR := Meraki
  1426. DEVICE_MODEL := MR12
  1427. IMAGE_SIZE := 15616k
  1428. DEVICE_PACKAGES := kmod-owl-loader rssileds
  1429. SUPPORTED_DEVICES += mr12
  1430. DEVICE_COMPAT_VERSION := 2.0
  1431. DEVICE_COMPAT_MESSAGE := Partitions differ from ar71xx version of MR12. Image format is incompatible. \
  1432. To use sysupgrade, you must change /lib/update/common.sh::get_image to prepend 128K zeroes to this image, \
  1433. and change the bootcmd in u-boot to "bootm 0xbf0a0000". After that, you can use "sysupgrade -F -n". \
  1434. Make sure you do not keep your old config, as ethernet setup is not compatible either. \
  1435. For more details, see the OpenWrt Wiki: https://openwrt.org/toh/meraki/MR12, \
  1436. or the commit message of the MR12 ath79 port on git.openwrt.org.
  1437. endef
  1438. TARGET_DEVICES += meraki_mr12
  1439. define Device/meraki_mr16
  1440. SOC := ar7161
  1441. DEVICE_VENDOR := Meraki
  1442. DEVICE_MODEL := MR16
  1443. IMAGE_SIZE := 15616k
  1444. DEVICE_PACKAGES := kmod-owl-loader
  1445. SUPPORTED_DEVICES += mr16
  1446. DEVICE_COMPAT_VERSION := 2.0
  1447. DEVICE_COMPAT_MESSAGE := Partitions differ from ar71xx version of MR16. Image format is incompatible. \
  1448. To use sysupgrade, you must change /lib/update/common.sh::get_image to prepend 128K zeroes to this image, \
  1449. and change the bootcmd in u-boot to "bootm 0xbf0a0000". After that, you can use "sysupgrade -F". \
  1450. For more details, see the OpenWrt Wiki: https://openwrt.org/toh/meraki/mr16, \
  1451. or the commit message of the MR16 ath79 port on git.openwrt.org.
  1452. endef
  1453. TARGET_DEVICES += meraki_mr16
  1454. define Device/mercury_mw4530r-v1
  1455. $(Device/tplink-8mlzma)
  1456. SOC := ar9344
  1457. DEVICE_VENDOR := Mercury
  1458. DEVICE_MODEL := MW4530R
  1459. DEVICE_VARIANT := v1
  1460. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  1461. TPLINK_HWID := 0x45300001
  1462. SUPPORTED_DEVICES += tl-wdr4300
  1463. endef
  1464. TARGET_DEVICES += mercury_mw4530r-v1
  1465. define Device/nec_wx1200cr
  1466. DEVICE_VENDOR := NEC
  1467. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
  1468. IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
  1469. check-size | append-metadata
  1470. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  1471. endef
  1472. define Device/nec_wf1200cr
  1473. $(Device/nec_wx1200cr)
  1474. SOC := qca9561
  1475. DEVICE_MODEL := Aterm WF1200CR
  1476. IMAGE_SIZE := 7680k
  1477. SEAMA_MTDBLOCK := 5
  1478. SEAMA_SIGNATURE := wrgac62_necpf.2016gui_wf1200cr
  1479. IMAGES += factory.bin
  1480. IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
  1481. seama-seal | nec-enc ryztfyutcrqqo69d | check-size
  1482. endef
  1483. TARGET_DEVICES += nec_wf1200cr
  1484. define Device/nec_wg1200cr
  1485. $(Device/nec_wx1200cr)
  1486. SOC := qca9563
  1487. DEVICE_MODEL := Aterm WG1200CR
  1488. IMAGE_SIZE := 7616k
  1489. SEAMA_MTDBLOCK := 6
  1490. SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
  1491. IMAGES += factory.bin
  1492. IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
  1493. seama-seal | nec-enc 9gsiy9nzep452pad | check-size
  1494. endef
  1495. TARGET_DEVICES += nec_wg1200cr
  1496. define Device/nec_wg800hp
  1497. SOC := qca9563
  1498. DEVICE_VENDOR := NEC
  1499. DEVICE_MODEL := Aterm WG800HP
  1500. IMAGE_SIZE := 7104k
  1501. IMAGES += factory.bin
  1502. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  1503. append-rootfs | pad-rootfs | check-size | \
  1504. xor-image -p 6A57190601121E4C004C1E1201061957 -x | nec-fw LASER_ATERM
  1505. DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9887-ct-full-htt
  1506. endef
  1507. TARGET_DEVICES += nec_wg800hp
  1508. define Device/netgear_ex6400_ex7300
  1509. $(Device/netgear_generic)
  1510. SOC := qca9558
  1511. UIMAGE_MAGIC := 0x27051956
  1512. NETGEAR_BOARD_ID := EX7300series
  1513. NETGEAR_HW_ID := 29765104+16+0+128
  1514. IMAGE_SIZE := 15552k
  1515. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
  1516. netgear-rootfs | pad-rootfs
  1517. IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
  1518. IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | check-size
  1519. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
  1520. endef
  1521. define Device/netgear_ex6400
  1522. $(Device/netgear_ex6400_ex7300)
  1523. DEVICE_MODEL := EX6400
  1524. endef
  1525. TARGET_DEVICES += netgear_ex6400
  1526. define Device/netgear_ex7300
  1527. $(Device/netgear_ex6400_ex7300)
  1528. DEVICE_MODEL := EX7300
  1529. endef
  1530. TARGET_DEVICES += netgear_ex7300
  1531. define Device/netgear_ex7300-v2
  1532. $(Device/netgear_generic)
  1533. SOC := qcn5502
  1534. DEVICE_MODEL := EX7300
  1535. DEVICE_VARIANT := v2
  1536. UIMAGE_MAGIC := 0x27051956
  1537. NETGEAR_BOARD_ID := EX7300v2series
  1538. NETGEAR_HW_ID := 29765907+16+0+128
  1539. IMAGE_SIZE := 14528k
  1540. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
  1541. netgear-rootfs | pad-rootfs
  1542. IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
  1543. IMAGE/factory.img := $$(IMAGE/default) | check-size | netgear-dni
  1544. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9984-ct
  1545. endef
  1546. TARGET_DEVICES += netgear_ex7300-v2
  1547. define Device/netgear_wndap360
  1548. $(Device/netgear_generic)
  1549. SOC := ar7161
  1550. DEVICE_MODEL := WNDAP360
  1551. DEVICE_PACKAGES := kmod-leds-reset kmod-owl-loader
  1552. IMAGE_SIZE := 7744k
  1553. BLOCKSIZE := 256k
  1554. KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
  1555. KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
  1556. IMAGES := sysupgrade.bin
  1557. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | \
  1558. check-size | append-metadata
  1559. endef
  1560. TARGET_DEVICES += netgear_wndap360
  1561. define Device/netgear_wndr3x00
  1562. $(Device/netgear_generic)
  1563. SOC := ar7161
  1564. DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
  1565. kmod-leds-reset kmod-owl-loader kmod-switch-rtl8366s
  1566. endef
  1567. define Device/netgear_wndr3700
  1568. $(Device/netgear_wndr3x00)
  1569. DEVICE_MODEL := WNDR3700
  1570. DEVICE_VARIANT := v1
  1571. UIMAGE_MAGIC := 0x33373030
  1572. NETGEAR_BOARD_ID := WNDR3700
  1573. IMAGE_SIZE := 7680k
  1574. IMAGES += factory-NA.img
  1575. IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
  1576. check-size
  1577. SUPPORTED_DEVICES += wndr3700
  1578. endef
  1579. TARGET_DEVICES += netgear_wndr3700
  1580. define Device/netgear_wndr3700-v2
  1581. $(Device/netgear_wndr3x00)
  1582. DEVICE_MODEL := WNDR3700
  1583. DEVICE_VARIANT := v2
  1584. UIMAGE_MAGIC := 0x33373031
  1585. NETGEAR_BOARD_ID := WNDR3700v2
  1586. NETGEAR_HW_ID := 29763654+16+64
  1587. IMAGE_SIZE := 15872k
  1588. SUPPORTED_DEVICES += wndr3700 netgear,wndr3700v2
  1589. endef
  1590. TARGET_DEVICES += netgear_wndr3700-v2
  1591. define Device/netgear_wndr3800
  1592. $(Device/netgear_wndr3x00)
  1593. DEVICE_MODEL := WNDR3800
  1594. UIMAGE_MAGIC := 0x33373031
  1595. NETGEAR_BOARD_ID := WNDR3800
  1596. NETGEAR_HW_ID := 29763654+16+128
  1597. IMAGE_SIZE := 15872k
  1598. SUPPORTED_DEVICES += wndr3700
  1599. endef
  1600. TARGET_DEVICES += netgear_wndr3800
  1601. define Device/netgear_wndr3800ch
  1602. $(Device/netgear_wndr3x00)
  1603. DEVICE_MODEL := WNDR3800CH
  1604. UIMAGE_MAGIC := 0x33373031
  1605. NETGEAR_BOARD_ID := WNDR3800CH
  1606. NETGEAR_HW_ID := 29763654+16+128
  1607. IMAGE_SIZE := 15872k
  1608. SUPPORTED_DEVICES += wndr3700
  1609. endef
  1610. TARGET_DEVICES += netgear_wndr3800ch
  1611. define Device/netgear_wndrmac-v1
  1612. $(Device/netgear_wndr3x00)
  1613. DEVICE_MODEL := WNDRMAC
  1614. DEVICE_VARIANT := v1
  1615. UIMAGE_MAGIC := 0x33373031
  1616. NETGEAR_BOARD_ID := WNDRMAC
  1617. NETGEAR_HW_ID := 29763654+16+64
  1618. IMAGE_SIZE := 15872k
  1619. SUPPORTED_DEVICES += wndr3700
  1620. endef
  1621. TARGET_DEVICES += netgear_wndrmac-v1
  1622. define Device/netgear_wndrmac-v2
  1623. $(Device/netgear_wndr3x00)
  1624. DEVICE_MODEL := WNDRMAC
  1625. DEVICE_VARIANT := v2
  1626. UIMAGE_MAGIC := 0x33373031
  1627. NETGEAR_BOARD_ID := WNDRMACv2
  1628. NETGEAR_HW_ID := 29763654+16+128
  1629. IMAGE_SIZE := 15872k
  1630. SUPPORTED_DEVICES += wndr3700
  1631. endef
  1632. TARGET_DEVICES += netgear_wndrmac-v2
  1633. define Device/netgear_wnr2200_common
  1634. $(Device/netgear_generic)
  1635. SOC := ar7241
  1636. DEVICE_MODEL := WNR2200
  1637. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  1638. UIMAGE_MAGIC := 0x32323030
  1639. NETGEAR_BOARD_ID := wnr2200
  1640. endef
  1641. define Device/netgear_wnr2200-8m
  1642. $(Device/netgear_wnr2200_common)
  1643. DEVICE_VARIANT := 8M
  1644. NETGEAR_HW_ID := 29763600+08+64
  1645. IMAGE_SIZE := 7808k
  1646. IMAGES += factory-NA.img
  1647. IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
  1648. check-size
  1649. SUPPORTED_DEVICES += wnr2200
  1650. endef
  1651. TARGET_DEVICES += netgear_wnr2200-8m
  1652. define Device/netgear_wnr2200-16m
  1653. $(Device/netgear_wnr2200_common)
  1654. DEVICE_VARIANT := 16M
  1655. DEVICE_ALT0_VENDOR := NETGEAR
  1656. DEVICE_ALT0_MODEL := WNR2200
  1657. DEVICE_ALT0_VARIANT := CN/RU
  1658. NETGEAR_HW_ID :=
  1659. IMAGE_SIZE := 16000k
  1660. endef
  1661. TARGET_DEVICES += netgear_wnr2200-16m
  1662. define Device/ocedo_koala
  1663. SOC := qca9558
  1664. DEVICE_VENDOR := Ocedo
  1665. DEVICE_MODEL := Koala
  1666. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1667. SUPPORTED_DEVICES += koala
  1668. IMAGE_SIZE := 7424k
  1669. endef
  1670. TARGET_DEVICES += ocedo_koala
  1671. define Device/ocedo_raccoon
  1672. SOC := ar9344
  1673. DEVICE_VENDOR := Ocedo
  1674. DEVICE_MODEL := Raccoon
  1675. IMAGE_SIZE := 7424k
  1676. endef
  1677. TARGET_DEVICES += ocedo_raccoon
  1678. define Device/ocedo_ursus
  1679. SOC := qca9558
  1680. DEVICE_VENDOR := Ocedo
  1681. DEVICE_MODEL := Ursus
  1682. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1683. IMAGE_SIZE := 7424k
  1684. endef
  1685. TARGET_DEVICES += ocedo_ursus
  1686. define Device/onion_omega
  1687. $(Device/tplink-16mlzma)
  1688. SOC := ar9331
  1689. DEVICE_VENDOR := Onion
  1690. DEVICE_MODEL := Omega
  1691. DEVICE_PACKAGES := kmod-usb-chipidea2
  1692. SUPPORTED_DEVICES += onion-omega
  1693. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
  1694. IMAGE_SIZE := 16192k
  1695. TPLINK_HWID := 0x04700001
  1696. endef
  1697. TARGET_DEVICES += onion_omega
  1698. define Device/openmesh_common_64k
  1699. DEVICE_VENDOR := OpenMesh
  1700. DEVICE_PACKAGES := uboot-envtools
  1701. IMAGE_SIZE := 7808k
  1702. OPENMESH_CE_TYPE :=
  1703. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | \
  1704. pad-to $$(BLOCKSIZE)
  1705. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
  1706. openmesh-image ce_type=$$$$(OPENMESH_CE_TYPE) | append-metadata
  1707. endef
  1708. define Device/openmesh_common_256k
  1709. DEVICE_VENDOR := OpenMesh
  1710. DEVICE_PACKAGES := uboot-envtools
  1711. IMAGE_SIZE := 7168k
  1712. BLOCKSIZE := 256k
  1713. OPENMESH_CE_TYPE :=
  1714. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | \
  1715. pad-to $$(BLOCKSIZE)
  1716. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
  1717. openmesh-image ce_type=$$$$(OPENMESH_CE_TYPE) | append-metadata
  1718. endef
  1719. define Device/openmesh_a40
  1720. $(Device/openmesh_common_64k)
  1721. SOC := qca9558
  1722. DEVICE_MODEL := A40
  1723. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
  1724. OPENMESH_CE_TYPE := A60
  1725. SUPPORTED_DEVICES += a40
  1726. endef
  1727. TARGET_DEVICES += openmesh_a40
  1728. define Device/openmesh_a60
  1729. $(Device/openmesh_common_64k)
  1730. SOC := qca9558
  1731. DEVICE_MODEL := A60
  1732. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
  1733. OPENMESH_CE_TYPE := A60
  1734. SUPPORTED_DEVICES += a60
  1735. endef
  1736. TARGET_DEVICES += openmesh_a60
  1737. define Device/openmesh_mr600-v1
  1738. $(Device/openmesh_common_64k)
  1739. SOC := ar9344
  1740. DEVICE_MODEL := MR600
  1741. DEVICE_VARIANT := v1
  1742. OPENMESH_CE_TYPE := MR600
  1743. SUPPORTED_DEVICES += mr600
  1744. endef
  1745. TARGET_DEVICES += openmesh_mr600-v1
  1746. define Device/openmesh_mr600-v2
  1747. $(Device/openmesh_common_64k)
  1748. SOC := ar9344
  1749. DEVICE_MODEL := MR600
  1750. DEVICE_VARIANT := v2
  1751. OPENMESH_CE_TYPE := MR600
  1752. SUPPORTED_DEVICES += mr600v2
  1753. endef
  1754. TARGET_DEVICES += openmesh_mr600-v2
  1755. define Device/openmesh_mr900-v1
  1756. $(Device/openmesh_common_64k)
  1757. SOC := qca9558
  1758. DEVICE_MODEL := MR900
  1759. DEVICE_VARIANT := v1
  1760. OPENMESH_CE_TYPE := MR900
  1761. SUPPORTED_DEVICES += mr900
  1762. endef
  1763. TARGET_DEVICES += openmesh_mr900-v1
  1764. define Device/openmesh_mr900-v2
  1765. $(Device/openmesh_common_64k)
  1766. SOC := qca9558
  1767. DEVICE_MODEL := MR900
  1768. DEVICE_VARIANT := v2
  1769. OPENMESH_CE_TYPE := MR900
  1770. SUPPORTED_DEVICES += mr900v2
  1771. endef
  1772. TARGET_DEVICES += openmesh_mr900-v2
  1773. define Device/openmesh_mr1750-v1
  1774. $(Device/openmesh_common_64k)
  1775. SOC := qca9558
  1776. DEVICE_MODEL := MR1750
  1777. DEVICE_VARIANT := v1
  1778. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1779. OPENMESH_CE_TYPE := MR1750
  1780. SUPPORTED_DEVICES += mr1750
  1781. endef
  1782. TARGET_DEVICES += openmesh_mr1750-v1
  1783. define Device/openmesh_mr1750-v2
  1784. $(Device/openmesh_common_64k)
  1785. SOC := qca9558
  1786. DEVICE_MODEL := MR1750
  1787. DEVICE_VARIANT := v2
  1788. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1789. OPENMESH_CE_TYPE := MR1750
  1790. SUPPORTED_DEVICES += mr1750v2
  1791. endef
  1792. TARGET_DEVICES += openmesh_mr1750-v2
  1793. define Device/openmesh_om2p-v1
  1794. $(Device/openmesh_common_256k)
  1795. SOC := ar7240
  1796. DEVICE_MODEL := OM2P
  1797. DEVICE_VARIANT := v1
  1798. OPENMESH_CE_TYPE := OM2P
  1799. SUPPORTED_DEVICES += om2p
  1800. endef
  1801. TARGET_DEVICES += openmesh_om2p-v1
  1802. define Device/openmesh_om2p-v2
  1803. $(Device/openmesh_common_256k)
  1804. SOC := ar9330
  1805. DEVICE_MODEL := OM2P
  1806. DEVICE_VARIANT := v2
  1807. OPENMESH_CE_TYPE := OM2P
  1808. SUPPORTED_DEVICES += om2pv2
  1809. endef
  1810. TARGET_DEVICES += openmesh_om2p-v2
  1811. define Device/openmesh_om2p-v4
  1812. $(Device/openmesh_common_256k)
  1813. SOC := qca9533
  1814. DEVICE_MODEL := OM2P
  1815. DEVICE_VARIANT := v4
  1816. OPENMESH_CE_TYPE := OM2P
  1817. SUPPORTED_DEVICES += om2pv4
  1818. endef
  1819. TARGET_DEVICES += openmesh_om2p-v4
  1820. define Device/openmesh_om2p-hs-v1
  1821. $(Device/openmesh_common_256k)
  1822. SOC := ar9341
  1823. DEVICE_MODEL := OM2P-HS
  1824. DEVICE_VARIANT := v1
  1825. OPENMESH_CE_TYPE := OM2P
  1826. SUPPORTED_DEVICES += om2p-hs
  1827. endef
  1828. TARGET_DEVICES += openmesh_om2p-hs-v1
  1829. define Device/openmesh_om2p-hs-v2
  1830. $(Device/openmesh_common_256k)
  1831. SOC := ar9341
  1832. DEVICE_MODEL := OM2P-HS
  1833. DEVICE_VARIANT := v2
  1834. OPENMESH_CE_TYPE := OM2P
  1835. SUPPORTED_DEVICES += om2p-hsv2
  1836. endef
  1837. TARGET_DEVICES += openmesh_om2p-hs-v2
  1838. define Device/openmesh_om2p-hs-v3
  1839. $(Device/openmesh_common_256k)
  1840. SOC := ar9341
  1841. DEVICE_MODEL := OM2P-HS
  1842. DEVICE_VARIANT := v3
  1843. OPENMESH_CE_TYPE := OM2P
  1844. SUPPORTED_DEVICES += om2p-hsv3
  1845. endef
  1846. TARGET_DEVICES += openmesh_om2p-hs-v3
  1847. define Device/openmesh_om2p-hs-v4
  1848. $(Device/openmesh_common_256k)
  1849. SOC := qca9533
  1850. DEVICE_MODEL := OM2P-HS
  1851. DEVICE_VARIANT := v4
  1852. OPENMESH_CE_TYPE := OM2P
  1853. SUPPORTED_DEVICES += om2p-hsv4
  1854. endef
  1855. TARGET_DEVICES += openmesh_om2p-hs-v4
  1856. define Device/openmesh_om2p-lc
  1857. $(Device/openmesh_common_256k)
  1858. SOC := ar9330
  1859. DEVICE_MODEL := OM2P-LC
  1860. OPENMESH_CE_TYPE := OM2P
  1861. SUPPORTED_DEVICES += om2p-lc
  1862. endef
  1863. TARGET_DEVICES += openmesh_om2p-lc
  1864. define Device/openmesh_om5p
  1865. $(Device/openmesh_common_64k)
  1866. SOC := ar9344
  1867. DEVICE_MODEL := OM5P
  1868. OPENMESH_CE_TYPE := OM5P
  1869. SUPPORTED_DEVICES += om5p
  1870. endef
  1871. TARGET_DEVICES += openmesh_om5p
  1872. define Device/openmesh_om5p-ac-v1
  1873. $(Device/openmesh_common_64k)
  1874. SOC := qca9558
  1875. DEVICE_MODEL := OM5P-AC
  1876. DEVICE_VARIANT := v1
  1877. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1878. OPENMESH_CE_TYPE := OM5PAC
  1879. SUPPORTED_DEVICES += om5p-ac
  1880. endef
  1881. TARGET_DEVICES += openmesh_om5p-ac-v1
  1882. define Device/openmesh_om5p-ac-v2
  1883. $(Device/openmesh_common_64k)
  1884. SOC := qca9558
  1885. DEVICE_MODEL := OM5P-AC
  1886. DEVICE_VARIANT := v2
  1887. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
  1888. OPENMESH_CE_TYPE := OM5PAC
  1889. SUPPORTED_DEVICES += om5p-acv2
  1890. endef
  1891. TARGET_DEVICES += openmesh_om5p-ac-v2
  1892. define Device/openmesh_om5p-an
  1893. $(Device/openmesh_common_64k)
  1894. SOC := ar9344
  1895. DEVICE_MODEL := OM5P-AN
  1896. OPENMESH_CE_TYPE := OM5P
  1897. SUPPORTED_DEVICES += om5p-an
  1898. endef
  1899. TARGET_DEVICES += openmesh_om5p-an
  1900. define Device/pcs_cap324
  1901. SOC := ar9344
  1902. DEVICE_VENDOR := PowerCloud Systems
  1903. DEVICE_MODEL := CAP324
  1904. IMAGE_SIZE := 16000k
  1905. SUPPORTED_DEVICES += cap324
  1906. endef
  1907. TARGET_DEVICES += pcs_cap324
  1908. define Device/pcs_cr3000
  1909. SOC := ar9341
  1910. DEVICE_VENDOR := PowerCloud Systems
  1911. DEVICE_MODEL := CR3000
  1912. IMAGE_SIZE := 7808k
  1913. SUPPORTED_DEVICES += cr3000
  1914. endef
  1915. TARGET_DEVICES += pcs_cr3000
  1916. define Device/pcs_cr5000
  1917. SOC := ar9344
  1918. DEVICE_VENDOR := PowerCloud Systems
  1919. DEVICE_MODEL := CR5000
  1920. DEVICE_PACKAGES := kmod-usb2
  1921. IMAGE_SIZE := 7808k
  1922. SUPPORTED_DEVICES += cr5000
  1923. endef
  1924. TARGET_DEVICES += pcs_cr5000
  1925. define Device/phicomm_k2t
  1926. SOC := qca9563
  1927. DEVICE_VENDOR := Phicomm
  1928. DEVICE_MODEL := K2T
  1929. IMAGE_SIZE := 15744k
  1930. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
  1931. check-size | append-metadata
  1932. DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9888-ct
  1933. endef
  1934. TARGET_DEVICES += phicomm_k2t
  1935. define Device/pisen_ts-d084
  1936. $(Device/tplink-8mlzma)
  1937. SOC := ar9331
  1938. DEVICE_VENDOR := PISEN
  1939. DEVICE_MODEL := TS-D084
  1940. DEVICE_PACKAGES := kmod-usb-chipidea2
  1941. TPLINK_HWID := 0x07030101
  1942. endef
  1943. TARGET_DEVICES += pisen_ts-d084
  1944. define Device/pisen_wmb001n
  1945. $(Device/loader-okli-uimage)
  1946. SOC := ar9341
  1947. DEVICE_VENDOR := PISEN
  1948. DEVICE_MODEL := WMB001N
  1949. IMAGE_SIZE := 14080k
  1950. DEVICE_PACKAGES := kmod-i2c-gpio kmod-usb2
  1951. LOADER_FLASH_OFFS := 0x20000
  1952. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  1953. IMAGES += factory.bin
  1954. IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | pisen_wmb001n-factory $(1)
  1955. endef
  1956. TARGET_DEVICES += pisen_wmb001n
  1957. define Device/pisen_wmm003n
  1958. $(Device/tplink-8mlzma)
  1959. SOC := ar9331
  1960. DEVICE_VENDOR := PISEN
  1961. DEVICE_MODEL := Cloud Easy Power (WMM003N)
  1962. DEVICE_PACKAGES := kmod-usb-chipidea2
  1963. TPLINK_HWID := 0x07030101
  1964. endef
  1965. TARGET_DEVICES += pisen_wmm003n
  1966. define Device/plasmacloud_pa300-common
  1967. SOC := qca9533
  1968. DEVICE_VENDOR := Plasma Cloud
  1969. DEVICE_PACKAGES := uboot-envtools
  1970. IMAGE_SIZE := 7168k
  1971. IMAGES += factory.bin
  1972. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-to $$(BLOCKSIZE)
  1973. IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA300
  1974. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
  1975. endef
  1976. define Device/plasmacloud_pa300
  1977. $(Device/plasmacloud_pa300-common)
  1978. DEVICE_MODEL := PA300
  1979. endef
  1980. TARGET_DEVICES += plasmacloud_pa300
  1981. define Device/plasmacloud_pa300e
  1982. $(Device/plasmacloud_pa300-common)
  1983. DEVICE_MODEL := PA300E
  1984. endef
  1985. TARGET_DEVICES += plasmacloud_pa300e
  1986. define Device/qca_ap143
  1987. $(Device/loader-okli-uimage)
  1988. SOC := qca9533
  1989. DEVICE_VENDOR := Qualcomm Atheros
  1990. DEVICE_MODEL := AP143
  1991. DEVICE_PACKAGES := kmod-usb2
  1992. SUPPORTED_DEVICES += ap143
  1993. LOADER_FLASH_OFFS := 0x50000
  1994. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  1995. endef
  1996. define Device/qca_ap143-8m
  1997. $(Device/qca_ap143)
  1998. DEVICE_VARIANT := (8M)
  1999. IMAGE_SIZE := 7744k
  2000. IMAGES += factory.bin
  2001. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  2002. append-rootfs | pad-rootfs | check-size | pad-to 6336k | \
  2003. append-loader-okli-uimage $(1) | pad-to 64k
  2004. endef
  2005. TARGET_DEVICES += qca_ap143-8m
  2006. define Device/qca_ap143-16m
  2007. $(Device/qca_ap143)
  2008. DEVICE_VARIANT := (16M)
  2009. IMAGE_SIZE := 15936k
  2010. IMAGES += factory.bin
  2011. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  2012. append-rootfs | pad-rootfs | check-size | pad-to 14528k | \
  2013. append-loader-okli-uimage $(1) | pad-to 64k
  2014. endef
  2015. TARGET_DEVICES += qca_ap143-16m
  2016. define Device/qihoo_c301
  2017. $(Device/seama)
  2018. SOC := ar9344
  2019. DEVICE_VENDOR := Qihoo
  2020. DEVICE_MODEL := C301
  2021. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct \
  2022. uboot-envtools
  2023. IMAGE_SIZE := 15744k
  2024. SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
  2025. SUPPORTED_DEVICES += qihoo-c301
  2026. endef
  2027. TARGET_DEVICES += qihoo_c301
  2028. define Device/qxwlan_e1700ac-v2
  2029. SOC := qca9563
  2030. DEVICE_VENDOR := Qxwlan
  2031. DEVICE_MODEL := E1700AC
  2032. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2033. SUPPORTED_DEVICES += e1700ac-v2
  2034. endef
  2035. define Device/qxwlan_e1700ac-v2-16m
  2036. $(Device/qxwlan_e1700ac-v2)
  2037. DEVICE_VARIANT := v2 (16M)
  2038. IMAGE_SIZE := 15936k
  2039. endef
  2040. TARGET_DEVICES += qxwlan_e1700ac-v2-16m
  2041. define Device/qxwlan_e1700ac-v2-8m
  2042. $(Device/qxwlan_e1700ac-v2)
  2043. DEVICE_VARIANT := v2 (8M)
  2044. IMAGE_SIZE := 7744k
  2045. endef
  2046. TARGET_DEVICES += qxwlan_e1700ac-v2-8m
  2047. define Device/qxwlan_e558-v2
  2048. SOC := qca9558
  2049. DEVICE_VENDOR := Qxwlan
  2050. DEVICE_MODEL := E558
  2051. DEVICE_PACKAGES := kmod-usb2
  2052. SUPPORTED_DEVICES += e558-v2
  2053. endef
  2054. define Device/qxwlan_e558-v2-16m
  2055. $(Device/qxwlan_e558-v2)
  2056. DEVICE_VARIANT := v2 (16M)
  2057. IMAGE_SIZE := 15936k
  2058. endef
  2059. TARGET_DEVICES += qxwlan_e558-v2-16m
  2060. define Device/qxwlan_e558-v2-8m
  2061. $(Device/qxwlan_e558-v2)
  2062. DEVICE_VARIANT := v2 (8M)
  2063. IMAGE_SIZE := 7744k
  2064. endef
  2065. TARGET_DEVICES += qxwlan_e558-v2-8m
  2066. define Device/qxwlan_e600g-v2
  2067. SOC := qca9531
  2068. DEVICE_VENDOR := Qxwlan
  2069. DEVICE_MODEL := E600G
  2070. DEVICE_PACKAGES := kmod-usb2
  2071. SUPPORTED_DEVICES += e600g-v2
  2072. endef
  2073. define Device/qxwlan_e600g-v2-16m
  2074. $(Device/qxwlan_e600g-v2)
  2075. DEVICE_VARIANT := v2 (16M)
  2076. IMAGE_SIZE := 15936k
  2077. endef
  2078. TARGET_DEVICES += qxwlan_e600g-v2-16m
  2079. define Device/qxwlan_e600g-v2-8m
  2080. $(Device/qxwlan_e600g-v2)
  2081. DEVICE_VARIANT := v2 (8M)
  2082. IMAGE_SIZE := 7744k
  2083. endef
  2084. TARGET_DEVICES += qxwlan_e600g-v2-8m
  2085. define Device/qxwlan_e600gac-v2
  2086. SOC := qca9531
  2087. DEVICE_VENDOR := Qxwlan
  2088. DEVICE_MODEL := E600GAC
  2089. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  2090. SUPPORTED_DEVICES += e600gac-v2
  2091. endef
  2092. define Device/qxwlan_e600gac-v2-16m
  2093. $(Device/qxwlan_e600gac-v2)
  2094. DEVICE_VARIANT := v2 (16M)
  2095. IMAGE_SIZE := 15936k
  2096. endef
  2097. TARGET_DEVICES += qxwlan_e600gac-v2-16m
  2098. define Device/qxwlan_e600gac-v2-8m
  2099. $(Device/qxwlan_e600gac-v2)
  2100. DEVICE_VARIANT := v2 (8M)
  2101. IMAGE_SIZE := 7744k
  2102. endef
  2103. TARGET_DEVICES += qxwlan_e600gac-v2-8m
  2104. define Device/qxwlan_e750a-v4
  2105. SOC := ar9344
  2106. DEVICE_VENDOR := Qxwlan
  2107. DEVICE_MODEL := E750A
  2108. DEVICE_PACKAGES := kmod-usb2
  2109. SUPPORTED_DEVICES += e750a-v4
  2110. endef
  2111. define Device/qxwlan_e750a-v4-16m
  2112. $(Device/qxwlan_e750a-v4)
  2113. DEVICE_VARIANT := v4 (16M)
  2114. IMAGE_SIZE := 15936k
  2115. endef
  2116. TARGET_DEVICES += qxwlan_e750a-v4-16m
  2117. define Device/qxwlan_e750a-v4-8m
  2118. $(Device/qxwlan_e750a-v4)
  2119. DEVICE_VARIANT := v4 (8M)
  2120. IMAGE_SIZE := 7744k
  2121. endef
  2122. TARGET_DEVICES += qxwlan_e750a-v4-8m
  2123. define Device/qxwlan_e750g-v8
  2124. SOC := ar9344
  2125. DEVICE_VENDOR := Qxwlan
  2126. DEVICE_MODEL := E750G
  2127. DEVICE_PACKAGES := kmod-usb2
  2128. SUPPORTED_DEVICES += e750g-v8
  2129. endef
  2130. define Device/qxwlan_e750g-v8-16m
  2131. $(Device/qxwlan_e750g-v8)
  2132. DEVICE_VARIANT := v8 (16M)
  2133. IMAGE_SIZE := 15936k
  2134. endef
  2135. TARGET_DEVICES += qxwlan_e750g-v8-16m
  2136. define Device/qxwlan_e750g-v8-8m
  2137. $(Device/qxwlan_e750g-v8)
  2138. DEVICE_VARIANT := v8 (8M)
  2139. IMAGE_SIZE := 7744k
  2140. endef
  2141. TARGET_DEVICES += qxwlan_e750g-v8-8m
  2142. define Device/rosinson_wr818
  2143. SOC := qca9563
  2144. DEVICE_VENDOR := Rosinson
  2145. DEVICE_MODEL := WR818
  2146. IMAGE_SIZE := 15872k
  2147. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  2148. endef
  2149. TARGET_DEVICES += rosinson_wr818
  2150. define Device/ruckus_zf73xx_common
  2151. DEVICE_VENDOR := Ruckus
  2152. DEVICE_PACKAGES := -swconfig kmod-usb2 kmod-usb-chipidea2
  2153. IMAGE_SIZE := 31744k
  2154. LOADER_TYPE := bin
  2155. KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
  2156. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
  2157. endef
  2158. define Device/ruckus_zf7321
  2159. $(Device/ruckus_zf73xx_common)
  2160. SOC := ar9342
  2161. DEVICE_MODEL := ZoneFlex 7321[-U]
  2162. endef
  2163. TARGET_DEVICES += ruckus_zf7321
  2164. define Device/ruckus_zf7372
  2165. $(Device/ruckus_zf73xx_common)
  2166. SOC := ar9344
  2167. DEVICE_MODEL := ZoneFlex 7352/7372[-E/-U]
  2168. endef
  2169. TARGET_DEVICES += ruckus_zf7372
  2170. define Device/samsung_wam250
  2171. SOC := ar9344
  2172. DEVICE_VENDOR := Samsung
  2173. DEVICE_MODEL := WAM250
  2174. IMAGE_SIZE := 15872k
  2175. DEVICE_PACKAGES := kmod-usb2
  2176. SUPPORTED_DEVICES += wam250
  2177. endef
  2178. TARGET_DEVICES += samsung_wam250
  2179. define Device/siemens_ws-ap3610
  2180. SOC := ar7161
  2181. DEVICE_VENDOR := Siemens
  2182. DEVICE_MODEL := WS-AP3610
  2183. IMAGE_SIZE := 14336k
  2184. BLOCKSIZE := 256k
  2185. LOADER_TYPE := bin
  2186. LOADER_FLASH_OFFS := 0x82000
  2187. COMPILE := loader-$(1).bin
  2188. COMPILE/loader-$(1).bin := loader-okli-compile
  2189. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | loader-okli $(1) 8128 | uImage none
  2190. KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
  2191. endef
  2192. TARGET_DEVICES += siemens_ws-ap3610
  2193. define Device/sitecom_wlr-7100
  2194. SOC := ar1022
  2195. DEVICE_VENDOR := Sitecom
  2196. DEVICE_MODEL := WLR-7100
  2197. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct-smallbuffers kmod-usb2
  2198. IMAGES += factory.dlf
  2199. IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  2200. append-rootfs | pad-rootfs | check-size | \
  2201. senao-header -r 0x222 -p 0x53 -t 2
  2202. IMAGE_SIZE := 7488k
  2203. endef
  2204. TARGET_DEVICES += sitecom_wlr-7100
  2205. define Device/sitecom_wlr-8100
  2206. SOC := qca9558
  2207. DEVICE_VENDOR := Sitecom
  2208. DEVICE_MODEL := WLR-8100
  2209. DEVICE_ALT0_VENDOR := Sitecom
  2210. DEVICE_ALT0_MODEL := X8 AC1750
  2211. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2 kmod-usb3
  2212. SUPPORTED_DEVICES += wlr8100
  2213. IMAGES += factory.dlf
  2214. IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  2215. append-rootfs | pad-rootfs | check-size | \
  2216. senao-header -r 0x222 -p 0x56 -t 2
  2217. IMAGE_SIZE := 15424k
  2218. endef
  2219. TARGET_DEVICES += sitecom_wlr-8100
  2220. define Device/sophos_ap15
  2221. SOC := qca9558
  2222. DEVICE_VENDOR := Sophos
  2223. DEVICE_MODEL := AP15
  2224. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2225. IMAGE_SIZE := 15936k
  2226. endef
  2227. TARGET_DEVICES += sophos_ap15
  2228. define Device/sophos_ap55
  2229. SOC := qca9558
  2230. DEVICE_VENDOR := Sophos
  2231. DEVICE_MODEL := AP55
  2232. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
  2233. IMAGE_SIZE := 15936k
  2234. endef
  2235. TARGET_DEVICES += sophos_ap55
  2236. define Device/sophos_ap55c
  2237. SOC := qca9558
  2238. DEVICE_VENDOR := Sophos
  2239. DEVICE_MODEL := AP55C
  2240. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2241. IMAGE_SIZE := 15936k
  2242. endef
  2243. TARGET_DEVICES += sophos_ap55c
  2244. define Device/sophos_ap100
  2245. SOC := qca9558
  2246. DEVICE_VENDOR := Sophos
  2247. DEVICE_MODEL := AP100
  2248. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
  2249. IMAGE_SIZE := 15936k
  2250. endef
  2251. TARGET_DEVICES += sophos_ap100
  2252. define Device/sophos_ap100c
  2253. SOC := qca9558
  2254. DEVICE_VENDOR := Sophos
  2255. DEVICE_MODEL := AP100C
  2256. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2257. IMAGE_SIZE := 15936k
  2258. endef
  2259. TARGET_DEVICES += sophos_ap100c
  2260. define Device/telco_t1
  2261. SOC := qca9531
  2262. DEVICE_VENDOR := Telco
  2263. DEVICE_MODEL := T1
  2264. DEVICE_PACKAGES := kmod-usb2 kmod-usb-net-qmi-wwan \
  2265. kmod-usb-serial-option uqmi -swconfig -uboot-envtools
  2266. IMAGE_SIZE := 16192k
  2267. SUPPORTED_DEVICES += telco_electronics,tel-t1
  2268. endef
  2269. TARGET_DEVICES += telco_t1
  2270. define Device/teltonika_rut230-v1
  2271. SOC := ar9331
  2272. DEVICE_VENDOR := Teltonika
  2273. DEVICE_MODEL := RUT230
  2274. DEVICE_VARIANT := v1
  2275. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-acm kmod-usb-net-qmi-wwan \
  2276. uqmi -uboot-envtools
  2277. IMAGE_SIZE := 15552k
  2278. TPLINK_HWID := 0x32200002
  2279. TPLINK_HWREV := 0x1
  2280. TPLINK_HEADER_VERSION := 1
  2281. KERNEL := kernel-bin | append-dtb | lzma | teltonika-v1-header
  2282. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
  2283. IMAGES += factory.bin
  2284. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
  2285. pad-rootfs | pad-extra 64 | teltonika-fw-fake-checksum 54 | check-size
  2286. IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
  2287. append-rootfs | pad-rootfs | append-metadata |\
  2288. check-size
  2289. endef
  2290. TARGET_DEVICES += teltonika_rut230-v1
  2291. define Device/teltonika_rut955
  2292. SOC := ar9344
  2293. DEVICE_VENDOR := Teltonika
  2294. DEVICE_MODEL := RUT955
  2295. DEVICE_PACKAGES := kmod-usb2 kmod-usb-acm kmod-usb-net-qmi-wwan \
  2296. kmod-usb-serial-option kmod-hwmon-mcp3021 uqmi -uboot-envtools
  2297. IMAGE_SIZE := 15552k
  2298. TPLINK_HWID := 0x35000001
  2299. TPLINK_HWREV := 0x1
  2300. TPLINK_HEADER_VERSION := 1
  2301. KERNEL := kernel-bin | append-dtb | lzma | tplink-v1-header
  2302. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
  2303. IMAGES += factory.bin
  2304. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
  2305. pad-rootfs | teltonika-fw-fake-checksum 20 | append-string master |\
  2306. append-md5sum-bin | check-size
  2307. IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
  2308. append-rootfs | pad-rootfs | check-size | append-metadata
  2309. endef
  2310. TARGET_DEVICES += teltonika_rut955
  2311. define Device/teltonika_rut955-h7v3c0
  2312. $(Device/teltonika_rut955)
  2313. DEVICE_VARIANT := H7V3C0
  2314. endef
  2315. TARGET_DEVICES += teltonika_rut955-h7v3c0
  2316. define Device/trendnet_tew-823dru
  2317. SOC := qca9558
  2318. DEVICE_VENDOR := Trendnet
  2319. DEVICE_MODEL := TEW-823DRU
  2320. DEVICE_VARIANT := v1.0R
  2321. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2322. SUPPORTED_DEVICES += tew-823dru
  2323. IMAGE_SIZE := 15296k
  2324. IMAGES := factory.bin sysupgrade.bin
  2325. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
  2326. pad-rootfs
  2327. IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
  2328. append-string 00AP135AR9558-RT-131129-00 | check-size
  2329. IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
  2330. endef
  2331. TARGET_DEVICES += trendnet_tew-823dru
  2332. define Device/wallys_dr531
  2333. SOC := qca9531
  2334. DEVICE_VENDOR := Wallys
  2335. DEVICE_MODEL := DR531
  2336. DEVICE_PACKAGES := kmod-usb2 rssileds
  2337. IMAGE_SIZE := 7808k
  2338. SUPPORTED_DEVICES += dr531
  2339. endef
  2340. TARGET_DEVICES += wallys_dr531
  2341. define Device/watchguard_ap100
  2342. $(Device/senao_loader_okli)
  2343. SOC := ar9344
  2344. DEVICE_VENDOR := WatchGuard
  2345. DEVICE_MODEL := AP100
  2346. IMAGE_SIZE := 12096k
  2347. LOADER_FLASH_OFFS := 0x220000
  2348. SENAO_IMGNAME := senao-ap100
  2349. WATCHGUARD_MAGIC := 82kdlzk2
  2350. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
  2351. check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
  2352. endef
  2353. TARGET_DEVICES += watchguard_ap100
  2354. define Device/watchguard_ap200
  2355. $(Device/senao_loader_okli)
  2356. SOC := ar9344
  2357. DEVICE_VENDOR := WatchGuard
  2358. DEVICE_MODEL := AP200
  2359. IMAGE_SIZE := 12096k
  2360. LOADER_FLASH_OFFS := 0x220000
  2361. SENAO_IMGNAME := senao-ap200
  2362. WATCHGUARD_MAGIC := 82kdlzk2
  2363. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
  2364. check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
  2365. endef
  2366. TARGET_DEVICES += watchguard_ap200
  2367. define Device/watchguard_ap300
  2368. $(Device/senao_loader_okli)
  2369. SOC := qca9558
  2370. DEVICE_VENDOR := WatchGuard
  2371. DEVICE_MODEL := AP300
  2372. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
  2373. IMAGE_SIZE := 11584k
  2374. LOADER_FLASH_OFFS := 0x220000
  2375. SENAO_IMGNAME := senao-ap300
  2376. WATCHGUARD_MAGIC := 82kdlzk2
  2377. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
  2378. check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
  2379. endef
  2380. TARGET_DEVICES += watchguard_ap300
  2381. define Device/wd_mynet-n600
  2382. $(Device/seama)
  2383. SOC := ar9344
  2384. DEVICE_VENDOR := Western Digital
  2385. DEVICE_MODEL := My Net N600
  2386. IMAGE_SIZE := 15872k
  2387. DEVICE_PACKAGES := kmod-usb2
  2388. SEAMA_SIGNATURE := wrgnd16_wd_db600
  2389. SUPPORTED_DEVICES += mynet-n600
  2390. endef
  2391. TARGET_DEVICES += wd_mynet-n600
  2392. define Device/wd_mynet-n750
  2393. $(Device/seama)
  2394. SOC := ar9344
  2395. DEVICE_VENDOR := Western Digital
  2396. DEVICE_MODEL := My Net N750
  2397. IMAGE_SIZE := 15872k
  2398. DEVICE_PACKAGES := kmod-usb2
  2399. SEAMA_SIGNATURE := wrgnd13_wd_av
  2400. SUPPORTED_DEVICES += mynet-n750
  2401. endef
  2402. TARGET_DEVICES += wd_mynet-n750
  2403. define Device/wd_mynet-wifi-rangeextender
  2404. SOC := ar9344
  2405. DEVICE_VENDOR := Western Digital
  2406. DEVICE_MODEL := My Net Wi-Fi Range Extender
  2407. DEVICE_PACKAGES := rssileds nvram -swconfig
  2408. IMAGE_SIZE := 7808k
  2409. ADDPATTERN_ID := mynet-rext
  2410. ADDPATTERN_VERSION := 1.00.01
  2411. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
  2412. addpattern | append-metadata
  2413. SUPPORTED_DEVICES += mynet-rext
  2414. endef
  2415. TARGET_DEVICES += wd_mynet-wifi-rangeextender
  2416. define Device/winchannel_wb2000
  2417. SOC := ar9344
  2418. DEVICE_VENDOR := Winchannel
  2419. DEVICE_MODEL := WB2000
  2420. IMAGE_SIZE := 15872k
  2421. DEVICE_PACKAGES := kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 \
  2422. kmod-usb-ledtrig-usbport
  2423. endef
  2424. TARGET_DEVICES += winchannel_wb2000
  2425. define Device/xiaomi_aiot-ac2350
  2426. SOC := qca9563
  2427. DEVICE_VENDOR := Xiaomi
  2428. DEVICE_MODEL := AIoT AC2350
  2429. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9984-ct
  2430. IMAGE_SIZE := 14336k
  2431. endef
  2432. TARGET_DEVICES += xiaomi_aiot-ac2350
  2433. define Device/xiaomi_mi-router-4q
  2434. SOC := qca9561
  2435. DEVICE_VENDOR := Xiaomi
  2436. DEVICE_MODEL := Mi Router 4Q
  2437. IMAGE_SIZE := 14336k
  2438. endef
  2439. TARGET_DEVICES += xiaomi_mi-router-4q
  2440. define Device/yuncore_a770
  2441. SOC := qca9531
  2442. DEVICE_VENDOR := YunCore
  2443. DEVICE_MODEL := A770
  2444. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  2445. IMAGE_SIZE := 16000k
  2446. IMAGES += tftp.bin
  2447. IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
  2448. endef
  2449. TARGET_DEVICES += yuncore_a770
  2450. define Device/yuncore_a782
  2451. SOC := qca9563
  2452. DEVICE_VENDOR := YunCore
  2453. DEVICE_MODEL := A782
  2454. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  2455. IMAGE_SIZE := 16000k
  2456. IMAGES += tftp.bin
  2457. IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
  2458. endef
  2459. TARGET_DEVICES += yuncore_a782
  2460. define Device/yuncore_a930
  2461. SOC := qca9533
  2462. DEVICE_VENDOR := YunCore
  2463. DEVICE_MODEL := A930
  2464. IMAGE_SIZE := 16000k
  2465. IMAGES += tftp.bin
  2466. IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
  2467. endef
  2468. TARGET_DEVICES += yuncore_a930
  2469. define Device/yuncore_xd3200
  2470. SOC := qca9563
  2471. DEVICE_VENDOR := YunCore
  2472. DEVICE_MODEL := XD3200
  2473. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2474. IMAGE_SIZE := 16000k
  2475. IMAGES += tftp.bin
  2476. IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
  2477. endef
  2478. TARGET_DEVICES += yuncore_xd3200
  2479. define Device/yuncore_xd4200
  2480. SOC := qca9563
  2481. DEVICE_VENDOR := YunCore
  2482. DEVICE_MODEL := XD4200
  2483. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  2484. IMAGE_SIZE := 16000k
  2485. IMAGES += tftp.bin
  2486. IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
  2487. endef
  2488. TARGET_DEVICES += yuncore_xd4200
  2489. define Device/ziking_cpe46b
  2490. SOC := ar9330
  2491. DEVICE_VENDOR := ZiKing
  2492. DEVICE_MODEL := CPE46B
  2493. IMAGE_SIZE := 8000k
  2494. DEVICE_PACKAGES := kmod-i2c-gpio
  2495. endef
  2496. TARGET_DEVICES += ziking_cpe46b
  2497. define Device/zbtlink_zbt-wd323
  2498. SOC := ar9344
  2499. DEVICE_VENDOR := ZBT
  2500. DEVICE_MODEL := WD323
  2501. IMAGE_SIZE := 16000k
  2502. DEVICE_PACKAGES := kmod-usb2 kmod-i2c-gpio kmod-rtc-pcf8563 \
  2503. kmod-usb-serial-cp210x uqmi
  2504. endef
  2505. TARGET_DEVICES += zbtlink_zbt-wd323
  2506. define Device/zyxel_nwa11xx
  2507. $(Device/loader-okli-uimage)
  2508. SOC := ar9342
  2509. DEVICE_VENDOR := ZyXEL
  2510. LOADER_FLASH_OFFS := 0x050000
  2511. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
  2512. IMAGE_SIZE := 8192k
  2513. IMAGES += factory-$$$$(ZYXEL_MODEL_STRING).bin
  2514. IMAGE/factory-$$$$(ZYXEL_MODEL_STRING).bin := \
  2515. append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
  2516. pad-rootfs | pad-to 8192k | check-size | zyxel-tar-bz2 \
  2517. vmlinux_mi124_f1e mi124_f1e-jffs2 | append-md5sum-bin
  2518. endef
  2519. define Device/zyxel_nwa1100-nh
  2520. $(Device/zyxel_nwa11xx)
  2521. DEVICE_MODEL := NWA1100
  2522. DEVICE_VARIANT := NH
  2523. ZYXEL_MODEL_STRING := AASI
  2524. endef
  2525. TARGET_DEVICES += zyxel_nwa1100-nh
  2526. define Device/zyxel_nwa1121-ni
  2527. $(Device/zyxel_nwa11xx)
  2528. DEVICE_MODEL := NWA1121
  2529. DEVICE_VARIANT := NI
  2530. ZYXEL_MODEL_STRING := AABJ
  2531. endef
  2532. TARGET_DEVICES += zyxel_nwa1121-ni
  2533. define Device/zyxel_nwa1123-ac
  2534. $(Device/zyxel_nwa11xx)
  2535. DEVICE_MODEL := NWA1123
  2536. DEVICE_VARIANT := AC
  2537. ZYXEL_MODEL_STRING := AAOX
  2538. DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers \
  2539. ath10k-firmware-qca988x-ct
  2540. endef
  2541. TARGET_DEVICES += zyxel_nwa1123-ac
  2542. define Device/zyxel_nwa1123-ni
  2543. $(Device/zyxel_nwa11xx)
  2544. DEVICE_MODEL := NWA1123
  2545. DEVICE_VARIANT := NI
  2546. ZYXEL_MODEL_STRING := AAEO
  2547. endef
  2548. TARGET_DEVICES += zyxel_nwa1123-ni
  2549. define Device/zyxel_nbg6616
  2550. SOC := qca9557
  2551. DEVICE_VENDOR := ZyXEL
  2552. DEVICE_MODEL := NBG6616
  2553. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-rtc-pcf8563 \
  2554. kmod-ath10k-ct ath10k-firmware-qca988x-ct
  2555. IMAGE_SIZE := 15232k
  2556. RAS_BOARD := NBG6616
  2557. RAS_ROOTFS_SIZE := 14464k
  2558. RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
  2559. IMAGES += factory.bin
  2560. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  2561. append-rootfs | pad-rootfs | pad-to 64k | check-size | zyxel-ras-image
  2562. SUPPORTED_DEVICES += nbg6616
  2563. endef
  2564. TARGET_DEVICES += zyxel_nbg6616