Makefile 67 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083
  1. #
  2. # Copyright (C) 2007-2015 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. include $(INCLUDE_DIR)/kernel.mk
  9. PKG_NAME:=mac80211
  10. PKG_VERSION:=2015-03-09
  11. PKG_RELEASE:=3
  12. PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
  13. PKG_BACKPORT_VERSION:=
  14. PKG_MD5SUM:=6d4b04e4ce8a1f54dabfb04f4709453c
  15. PKG_SOURCE:=compat-wireless-$(PKG_VERSION)$(PKG_BACKPORT_VERSION).tar.bz2
  16. PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
  17. PKG_BUILD_PARALLEL:=1
  18. PKG_MAINTAINER:=Felix Fietkau <[email protected]>
  19. PKG_DRIVERS = \
  20. adm8211 ath5k libertas-usb libertas-sdio p54-common p54-pci p54-usb p54-spi \
  21. rt2x00-lib rt2x00-pci rt2x00-usb rt2800-lib rt2400-pci rt2500-pci \
  22. rt2500-usb rt61-pci rt73-usb rt2800-mmio rt2800-pci rt2800-usb rt2800-soc \
  23. rtl8180 rtl8187 zd1211rw mac80211-hwsim carl9170 b43 b43legacy \
  24. ath9k-common ath9k ath9k-htc ath10k ath net-libipw net-ipw2100 net-ipw2200 \
  25. mwl8k mwifiex-pcie net-hermes net-hermes-pci net-hermes-plx net-hermes-pcmcia \
  26. iwl-legacy iwl3945 iwl4965 iwlagn wlcore wl12xx wl18xx lib80211 \
  27. rtlwifi rtlwifi-pci rtlwifi-usb rtl8192c-common rtl8192ce rtl8192se \
  28. rtl8192de rtl8192cu
  29. PKG_CONFIG_DEPENDS:= \
  30. CONFIG_PACKAGE_kmod-mac80211 \
  31. $(patsubst %,CONFIG_PACKAGE_kmod-%,$(PKG_DRIVERS)) \
  32. CONFIG_PACKAGE_MAC80211_DEBUGFS \
  33. CONFIG_PACKAGE_MAC80211_MESH \
  34. CONFIG_PACKAGE_ATH_DEBUG \
  35. CONFIG_PACKAGE_ATH_DFS \
  36. CONFIG_PACKAGE_B43_DEBUG \
  37. CONFIG_PACKAGE_B43_PIO \
  38. CONFIG_PACKAGE_B43_PHY_G \
  39. CONFIG_PACKAGE_B43_PHY_N \
  40. CONFIG_PACKAGE_B43_PHY_LP \
  41. CONFIG_PACKAGE_B43_PHY_HT \
  42. CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB \
  43. CONFIG_PACKAGE_B43_BUSES_BCMA \
  44. CONFIG_PACKAGE_B43_BUSES_SSB \
  45. CONFIG_PACKAGE_RTLWIFI_DEBUG \
  46. CONFIG_ATH_USER_REGD \
  47. include $(INCLUDE_DIR)/package.mk
  48. WMENU:=Wireless Drivers
  49. define KernelPackage/mac80211/Default
  50. SUBMENU:=$(WMENU)
  51. URL:=https://wireless.wiki.kernel.org/
  52. MAINTAINER:=Felix Fietkau <[email protected]>
  53. DEPENDS:=@!TARGET_uml
  54. endef
  55. define KernelPackage/cfg80211
  56. $(call KernelPackage/mac80211/Default)
  57. TITLE:=cfg80211 - wireless configuration API
  58. DEPENDS+= +iw
  59. FILES:= \
  60. $(PKG_BUILD_DIR)/compat/compat.ko \
  61. $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
  62. endef
  63. define KernelPackage/cfg80211/description
  64. cfg80211 is the Linux wireless LAN (802.11) configuration API.
  65. endef
  66. define KernelPackage/mac80211
  67. $(call KernelPackage/mac80211/Default)
  68. TITLE:=Linux 802.11 Wireless Networking Stack
  69. DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211 +hostapd-common
  70. KCONFIG:=\
  71. CONFIG_AVERAGE=y
  72. FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.ko
  73. MENU:=1
  74. endef
  75. define KernelPackage/mac80211/config
  76. if PACKAGE_kmod-mac80211
  77. config PACKAGE_MAC80211_DEBUGFS
  78. bool "Export mac80211 internals in DebugFS"
  79. select KERNEL_DEBUG_FS
  80. default y
  81. help
  82. Select this to see extensive information about
  83. the internal state of mac80211 in debugfs.
  84. config PACKAGE_MAC80211_MESH
  85. bool "Enable 802.11s mesh support"
  86. default y
  87. endif
  88. endef
  89. define KernelPackage/mac80211/description
  90. Generic IEEE 802.11 Networking Stack (mac80211)
  91. endef
  92. PKG_LINUX_FIRMWARE_NAME:=linux-firmware
  93. PKG_LINUX_FIRMWARE_VERSION:=f404336ba808cbd57547196e13367079a23b822c
  94. PKG_LINUX_FIRMWARE_SOURCE:=$(PKG_LINUX_FIRMWARE_NAME)-2015-03-20-$(PKG_LINUX_FIRMWARE_VERSION).tar.bz2
  95. PKG_LINUX_FIRMWARE_PROTO:=git
  96. PKG_LINUX_FIRMWARE_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
  97. PKG_LINUX_FIRMWARE_SUBDIR:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION)
  98. #PKG_LINUX_FIRMWARE_MIRROR_MD5SUM:=e219333f01835c6e556875a9e0deb3f9
  99. define Download/linux-firmware
  100. FILE:=$(PKG_LINUX_FIRMWARE_SOURCE)
  101. URL:=$(PKG_LINUX_FIRMWARE_SOURCE_URL)
  102. MD5SUM:=$(PKG_LINUX_FIRMWARE_MD5SUM)
  103. PROTO:=$(PKG_LINUX_FIRMWARE_PROTO)
  104. VERSION:=$(PKG_LINUX_FIRMWARE_VERSION)
  105. SUBDIR:=$(PKG_LINUX_FIRMWARE_SUBDIR)
  106. MIRROR_MD5SUM:=$(PKG_LINUX_FIRMWARE_MIRROR_MD5SUM)
  107. endef
  108. $(eval $(call Download,linux-firmware))
  109. PKG_ATH10K_LINUX_FIRMWARE_NAME:=ath10k-firmware
  110. PKG_ATH10K_LINUX_FIRMWARE_VERSION:=da0f85d924226ee30c46e037120621c9e192b39e
  111. PKG_ATH10K_LINUX_FIRMWARE_SOURCE:=$(PKG_ATH10K_LINUX_FIRMWARE_NAME)-$(PKG_ATH10K_LINUX_FIRMWARE_VERSION).tar.bz2
  112. PKG_ATH10K_LINUX_FIRMWARE_PROTO:=git
  113. PKG_ATH10K_LINUX_FIRMWARE_SOURCE_URL:=https://github.com/kvalo/ath10k-firmware.git
  114. PKG_ATH10K_LINUX_FIRMWARE_SUBDIR:=$(PKG_ATH10K_LINUX_FIRMWARE_NAME)-$(PKG_ATH10K_LINUX_FIRMWARE_VERSION)
  115. #PKG_ATH10K_LINUX_FIRMWARE_MIRROR_MD5SUM:=?
  116. define Download/ath10k-firmware
  117. FILE:=$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
  118. URL:=$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE_URL)
  119. PROTO:=$(PKG_ATH10K_LINUX_FIRMWARE_PROTO)
  120. VERSION:=$(PKG_ATH10K_LINUX_FIRMWARE_VERSION)
  121. SUBDIR:=$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)
  122. #MIRROR_MD5SUM:=$(PKG_ATH10K_LINUX_FIRMWARE_MIRROR_MD5SUM)
  123. endef
  124. $(eval $(call Download,ath10k-firmware))
  125. # Prism54 drivers
  126. P54PCIFW:=2.13.12.0.arm
  127. P54USBFW:=2.13.24.0.lm87.arm
  128. P54SPIFW:=2.13.0.0.a.13.14.arm
  129. define Download/p54usb
  130. FILE:=$(P54USBFW)
  131. URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
  132. MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
  133. endef
  134. $(eval $(call Download,p54usb))
  135. define Download/p54pci
  136. FILE:=$(P54PCIFW)
  137. URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
  138. MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
  139. endef
  140. $(eval $(call Download,p54pci))
  141. define Download/p54spi
  142. FILE:=$(P54SPIFW)
  143. URL:=http://daemonizer.de/prism54/prism54-fw/stlc4560
  144. MD5SUM:=42661f8ecbadd88012807493f596081d
  145. endef
  146. $(eval $(call Download,p54spi))
  147. define KernelPackage/p54/Default
  148. $(call KernelPackage/mac80211/Default)
  149. TITLE:=Prism54 Drivers
  150. endef
  151. define KernelPackage/p54/description
  152. Kernel module for Prism54 chipsets (mac80211)
  153. endef
  154. define KernelPackage/p54-common
  155. $(call KernelPackage/p54/Default)
  156. DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT||@TARGET_omap24xx +kmod-mac80211 +kmod-lib-crc-ccitt
  157. TITLE+= (COMMON)
  158. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.ko
  159. endef
  160. define KernelPackage/p54-pci
  161. $(call KernelPackage/p54/Default)
  162. TITLE+= (PCI)
  163. DEPENDS+= @PCI_SUPPORT +kmod-p54-common
  164. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.ko
  165. AUTOLOAD:=$(call AutoProbe,p54pci)
  166. endef
  167. define KernelPackage/p54-usb
  168. $(call KernelPackage/p54/Default)
  169. TITLE+= (USB)
  170. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
  171. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.ko
  172. AUTOLOAD:=$(call AutoProbe,p54usb)
  173. endef
  174. define KernelPackage/p54-spi
  175. $(call KernelPackage/p54/Default)
  176. TITLE+= (SPI)
  177. DEPENDS+= @TARGET_omap24xx +kmod-p54-common
  178. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54spi.ko
  179. AUTOLOAD:=$(call AutoProbe,p54spi)
  180. endef
  181. define KernelPackage/rt2x00/Default
  182. $(call KernelPackage/mac80211/Default)
  183. TITLE:=Ralink Drivers for RT2x00 cards
  184. endef
  185. define KernelPackage/rt2x00-lib
  186. $(call KernelPackage/rt2x00/Default)
  187. DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-lib-crc-itu-t
  188. TITLE+= (LIB)
  189. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.ko
  190. MENU:=1
  191. endef
  192. define KernelPackage/rt2x00-lib/config
  193. if PACKAGE_kmod-rt2x00-lib
  194. config PACKAGE_RT2X00_LIB_DEBUGFS
  195. bool "Enable rt2x00 debugfs support"
  196. depends on PACKAGE_MAC80211_DEBUGFS
  197. help
  198. Enable creation of debugfs files for the rt2x00 drivers.
  199. These debugfs files support both reading and writing of the
  200. most important register types of the rt2x00 hardware.
  201. config PACKAGE_RT2X00_DEBUG
  202. bool "Enable rt2x00 debug output"
  203. help
  204. Enable debugging output for all rt2x00 modules
  205. endif
  206. endef
  207. define KernelPackage/rt2x00-mmio
  208. $(call KernelPackage/rt2x00/Default)
  209. DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
  210. HIDDEN:=1
  211. TITLE+= (MMIO)
  212. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00mmio.ko
  213. endef
  214. define KernelPackage/rt2x00-pci
  215. $(call KernelPackage/rt2x00/Default)
  216. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-mmio +kmod-rt2x00-lib
  217. HIDDEN:=1
  218. TITLE+= (PCI)
  219. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.ko
  220. AUTOLOAD:=$(call AutoProbe,rt2x00pci)
  221. endef
  222. define KernelPackage/rt2x00-usb
  223. $(call KernelPackage/rt2x00/Default)
  224. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
  225. HIDDEN:=1
  226. TITLE+= (USB)
  227. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.ko
  228. AUTOLOAD:=$(call AutoProbe,rt2x00usb)
  229. endef
  230. define KernelPackage/rt2800-lib
  231. $(call KernelPackage/rt2x00/Default)
  232. DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-lib-crc-ccitt +@DRIVER_11N_SUPPORT
  233. HIDDEN:=1
  234. TITLE+= (rt2800 LIB)
  235. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.ko
  236. endef
  237. define KernelPackage/rt2400-pci
  238. $(call KernelPackage/rt2x00/Default)
  239. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  240. TITLE+= (RT2400 PCI)
  241. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.ko
  242. AUTOLOAD:=$(call AutoProbe,rt2400pci)
  243. endef
  244. define KernelPackage/rt2500-pci
  245. $(call KernelPackage/rt2x00/Default)
  246. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  247. TITLE+= (RT2500 PCI)
  248. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.ko
  249. AUTOLOAD:=$(call AutoProbe,rt2500pci)
  250. endef
  251. define KernelPackage/rt2500-usb
  252. $(call KernelPackage/rt2x00/Default)
  253. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
  254. TITLE+= (RT2500 USB)
  255. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.ko
  256. AUTOLOAD:=$(call AutoProbe,rt2500usb)
  257. endef
  258. define KernelPackage/rt61-pci
  259. $(call KernelPackage/rt2x00/Default)
  260. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  261. TITLE+= (RT2x61 PCI)
  262. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.ko
  263. AUTOLOAD:=$(call AutoProbe,rt61pci)
  264. endef
  265. define KernelPackage/rt73-usb
  266. $(call KernelPackage/rt2x00/Default)
  267. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
  268. TITLE+= (RT73 USB)
  269. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.ko
  270. AUTOLOAD:=$(call AutoProbe,rt73usb)
  271. endef
  272. define KernelPackage/rt2800-mmio
  273. $(call KernelPackage/rt2x00/Default)
  274. TITLE += (RT28xx/RT3xxx MMIO)
  275. DEPENDS += +kmod-rt2800-lib +kmod-rt2x00-mmio
  276. HIDDEN:=1
  277. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800mmio.ko
  278. endef
  279. define KernelPackage/rt2800-soc
  280. $(call KernelPackage/rt2x00/Default)
  281. DEPENDS += @(TARGET_ramips_rt288x||TARGET_ramips_rt305x||TARGET_ramips_rt3883||TARGET_ramips_mt7620) +kmod-rt2800-mmio +kmod-rt2800-lib
  282. TITLE += (RT28xx/RT3xxx SoC)
  283. FILES := \
  284. $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.ko \
  285. $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800soc.ko
  286. AUTOLOAD:=$(call AutoProbe,rt2800soc)
  287. endef
  288. define KernelPackage/rt2800-pci
  289. $(call KernelPackage/rt2x00/Default)
  290. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-rt2800-mmio
  291. TITLE+= (RT2860 PCI)
  292. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.ko
  293. AUTOLOAD:=$(call AutoProbe,rt2800pci)
  294. endef
  295. define KernelPackage/rt2800-usb
  296. $(call KernelPackage/rt2x00/Default)
  297. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-lib-crc-ccitt
  298. TITLE+= (RT2870 USB)
  299. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.ko
  300. AUTOLOAD:=$(call AutoProbe,rt2800usb)
  301. endef
  302. define KernelPackage/rtl818x/Default
  303. $(call KernelPackage/mac80211/Default)
  304. TITLE:=Realtek Drivers for RTL818x devices
  305. URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
  306. DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
  307. endef
  308. define KernelPackage/rtl8180
  309. $(call KernelPackage/rtl818x/Default)
  310. DEPENDS+= @PCI_SUPPORT
  311. TITLE+= (RTL8180 PCI)
  312. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180/rtl818x_pci.ko
  313. AUTOLOAD:=$(call AutoProbe,rtl818x_pci)
  314. endef
  315. define KernelPackage/rtl8187
  316. $(call KernelPackage/rtl818x/Default)
  317. DEPENDS+= @USB_SUPPORT +kmod-usb-core
  318. TITLE+= (RTL8187 USB)
  319. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko
  320. AUTOLOAD:=$(call AutoProbe,rtl8187)
  321. endef
  322. define KernelPackage/rtlwifi/config
  323. config PACKAGE_RTLWIFI_DEBUG
  324. bool "Realtek wireless debugging"
  325. depends on PACKAGE_kmod-rtlwifi
  326. help
  327. Say Y, if you want to debug realtek wireless drivers.
  328. endef
  329. define KernelPackage/rtlwifi
  330. $(call KernelPackage/mac80211/Default)
  331. TITLE:=Realtek common driver part
  332. DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211 +@DRIVER_11N_SUPPORT
  333. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtlwifi.ko
  334. HIDDEN:=1
  335. endef
  336. define KernelPackage/rtlwifi-pci
  337. $(call KernelPackage/mac80211/Default)
  338. TITLE:=Realtek common driver part (PCI support)
  339. DEPENDS+= @PCI_SUPPORT +kmod-rtlwifi
  340. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl_pci.ko
  341. AUTOLOAD:=$(call AutoProbe,rtl_pci)
  342. HIDDEN:=1
  343. endef
  344. define KernelPackage/rtlwifi-usb
  345. $(call KernelPackage/mac80211/Default)
  346. TITLE:=Realtek common driver part (USB support)
  347. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-rtlwifi
  348. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl_usb.ko
  349. AUTOLOAD:=$(call AutoProbe,rtl_usb)
  350. HIDDEN:=1
  351. endef
  352. define KernelPackage/rtl8192c-common
  353. $(call KernelPackage/mac80211/Default)
  354. TITLE:=Realtek RTL8192CE/RTL8192CU common support module
  355. DEPENDS+= +kmod-rtlwifi
  356. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko
  357. HIDDEN:=1
  358. endef
  359. define KernelPackage/rtl8192ce
  360. $(call KernelPackage/mac80211/Default)
  361. TITLE:=Realtek RTL8192CE/RTL8188CE support
  362. DEPENDS+= +kmod-rtlwifi-pci +kmod-rtl8192c-common
  363. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko
  364. AUTOLOAD:=$(call AutoProbe,rtl8192ce)
  365. endef
  366. define KernelPackage/rtl8192ce/install
  367. $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
  368. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfw.bin $(1)/lib/firmware/rtlwifi
  369. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfwU.bin $(1)/lib/firmware/rtlwifi
  370. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfwU_B.bin $(1)/lib/firmware/rtlwifi
  371. endef
  372. define KernelPackage/rtl8192se
  373. $(call KernelPackage/mac80211/Default)
  374. TITLE:=Realtek RTL8192SE/RTL8191SE support
  375. DEPENDS+= +kmod-rtlwifi-pci
  376. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko
  377. AUTOLOAD:=$(call AutoProbe,rtl8192se)
  378. endef
  379. define KernelPackage/rtl8192se/install
  380. $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
  381. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192sefw.bin $(1)/lib/firmware/rtlwifi
  382. endef
  383. define KernelPackage/rtl8192de
  384. $(call KernelPackage/mac80211/Default)
  385. TITLE:=Realtek RTL8192DE/RTL8188DE support
  386. DEPENDS+= +kmod-rtlwifi-pci
  387. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192de/rtl8192de.ko
  388. AUTOLOAD:=$(call AutoProbe,rtl8192de)
  389. endef
  390. define KernelPackage/rtl8192de/install
  391. $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
  392. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192defw.bin $(1)/lib/firmware/rtlwifi
  393. endef
  394. define KernelPackage/rtl8192cu
  395. $(call KernelPackage/mac80211/Default)
  396. TITLE:=Realtek RTL8192CU/RTL8188CU support
  397. DEPENDS+= +kmod-rtlwifi-usb +kmod-rtl8192c-common
  398. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko
  399. AUTOLOAD:=$(call AutoProbe,rtl8192cu)
  400. endef
  401. define KernelPackage/rtl8192cu/install
  402. $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
  403. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw.bin $(1)/lib/firmware/rtlwifi
  404. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_A.bin $(1)/lib/firmware/rtlwifi
  405. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_B.bin $(1)/lib/firmware/rtlwifi
  406. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_TMSC.bin $(1)/lib/firmware/rtlwifi
  407. endef
  408. ZD1211FW_NAME:=zd1211-firmware
  409. ZD1211FW_VERSION:=1.4
  410. define Download/zd1211rw
  411. FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
  412. URL:=@SF/zd1211/
  413. MD5SUM:=19f28781d76569af8551c9d11294c870
  414. endef
  415. $(eval $(call Download,zd1211rw))
  416. define KernelPackage/zd1211rw
  417. $(call KernelPackage/mac80211/Default)
  418. TITLE:=Zydas ZD1211 support
  419. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
  420. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.ko
  421. AUTOLOAD:=$(call AutoProbe,zd1211rw)
  422. endef
  423. define KernelPackage/adm8211
  424. $(call KernelPackage/mac80211/Default)
  425. TITLE:=ADMTek 8211 support
  426. DEPENDS+=@PCI_SUPPORT +kmod-mac80211 +kmod-eeprom-93cx6
  427. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/adm8211.ko
  428. AUTOLOAD:=$(call AutoProbe,adm8211)
  429. endef
  430. define KernelPackage/ath/config
  431. if PACKAGE_kmod-ath
  432. config ATH_USER_REGD
  433. bool "Force Atheros drivers to respect the user's regdomain settings"
  434. help
  435. Atheros' idea of regulatory handling is that the EEPROM of the card defines
  436. the regulatory limits and the user is only allowed to restrict the settings
  437. even further, even if the country allows frequencies or power levels that
  438. are forbidden by the EEPROM settings.
  439. Select this option if you want the driver to respect the user's decision about
  440. regulatory settings.
  441. config PACKAGE_ATH_DEBUG
  442. bool "Atheros wireless debugging"
  443. help
  444. Say Y, if you want to debug atheros wireless drivers.
  445. Right now only ath9k makes use of this.
  446. config PACKAGE_ATH_DFS
  447. bool "Enable DFS support"
  448. default y
  449. help
  450. Dynamic frequency selection (DFS) is required for most of the 5 GHz band
  451. channels in Europe, US, and Japan.
  452. Select this option if you want to use such channels.
  453. endif
  454. endef
  455. define KernelPackage/ath
  456. $(call KernelPackage/mac80211/Default)
  457. TITLE:=Atheros common driver part
  458. DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx||TARGET_ath25 +kmod-mac80211
  459. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
  460. MENU:=1
  461. endef
  462. define KernelPackage/ath/description
  463. This module contains some common parts needed by Atheros Wireless drivers.
  464. endef
  465. define KernelPackage/ath5k
  466. $(call KernelPackage/mac80211/Default)
  467. TITLE:=Atheros 5xxx wireless cards support
  468. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
  469. DEPENDS+= @PCI_SUPPORT||@TARGET_ath25 +kmod-ath
  470. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
  471. AUTOLOAD:=$(call AutoProbe,ath5k)
  472. endef
  473. define KernelPackage/ath5k/description
  474. This module adds support for wireless adapters based on
  475. Atheros 5xxx chipset.
  476. endef
  477. define KernelPackage/ath9k-common
  478. $(call KernelPackage/mac80211/Default)
  479. TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
  480. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  481. DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx +kmod-ath +@DRIVER_11N_SUPPORT +@KERNEL_RELAY
  482. FILES:= \
  483. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
  484. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
  485. endef
  486. define KernelPackage/ath9k
  487. $(call KernelPackage/mac80211/Default)
  488. TITLE:=Atheros 802.11n PCI wireless cards support
  489. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  490. DEPENDS+= @PCI_SUPPORT||TARGET_ar71xx +kmod-ath9k-common
  491. FILES:= \
  492. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
  493. AUTOLOAD:=$(call AutoProbe,ath9k)
  494. endef
  495. define KernelPackage/ath9k/description
  496. This module adds support for wireless adapters based on
  497. Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
  498. endef
  499. define KernelPackage/ath9k/config
  500. config ATH9K_SUPPORT_PCOEM
  501. bool "Support chips used in PC OEM cards"
  502. depends on PACKAGE_kmod-ath9k
  503. endef
  504. define KernelPackage/ath9k-htc
  505. $(call KernelPackage/mac80211/Default)
  506. TITLE:=Atheros 802.11n USB device support
  507. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  508. DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core
  509. FILES:= \
  510. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
  511. AUTOLOAD:=$(call AutoProbe,ath9k_htc)
  512. endef
  513. define KernelPackage/ath9k-htc/description
  514. This module adds support for wireless adapters based on
  515. Atheros USB AR9271 and AR7010 family of chipsets.
  516. endef
  517. define KernelPackage/ath10k
  518. $(call KernelPackage/mac80211/Default)
  519. TITLE:=Atheros 802.11ac wireless cards support
  520. URL:=https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
  521. DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11N_SUPPORT
  522. FILES:= \
  523. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
  524. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
  525. AUTOLOAD:=$(call AutoLoad,55,ath10k_core ath10k_pci)
  526. endef
  527. define KernelPackage/ath10k/description
  528. This module adds support for wireless adapters based on
  529. Atheros IEEE 802.11ac family of chipsets. For now only
  530. PCI is supported.
  531. endef
  532. define KernelPackage/ath10k/config
  533. if PACKAGE_kmod-ath10k
  534. config ATH10K_STA_FW
  535. bool "Firmware optimized for STA operation"
  536. default n
  537. help
  538. Use the ath10k firmware optimized for wireless client instead
  539. of access point operation.
  540. endif
  541. endef
  542. define KernelPackage/carl9170
  543. $(call KernelPackage/mac80211/Default)
  544. TITLE:=Driver for Atheros AR9170 USB sticks
  545. DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT
  546. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
  547. AUTOLOAD:=$(call AutoProbe,carl9170)
  548. endef
  549. define KernelPackage/lib80211
  550. $(call KernelPackage/mac80211/Default)
  551. TITLE:=802.11 Networking stack
  552. DEPENDS:=+kmod-cfg80211
  553. FILES:= \
  554. $(PKG_BUILD_DIR)/net/wireless/lib80211.ko \
  555. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_wep.ko \
  556. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_ccmp.ko \
  557. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_tkip.ko
  558. AUTOLOAD:=$(call AutoProbe, \
  559. lib80211 \
  560. lib80211_crypt_wep \
  561. lib80211_crypt_ccmp \
  562. lib80211_crypt_tkip \
  563. )
  564. endef
  565. define KernelPackage/lib80211/description
  566. Kernel modules for 802.11 Networking stack
  567. Includes:
  568. - lib80211
  569. - lib80211_crypt_wep
  570. - lib80211_crypt_tkip
  571. - lib80211_crytp_ccmp
  572. endef
  573. define KernelPackage/libertas-usb
  574. $(call KernelPackage/mac80211/Default)
  575. DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
  576. TITLE:=Marvell 88W8015 Wireless Driver
  577. FILES:= \
  578. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
  579. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.ko
  580. AUTOLOAD:=$(call AutoProbe,libertas usb8xxx)
  581. endef
  582. define KernelPackage/libertas-sdio
  583. $(call KernelPackage/mac80211/Default)
  584. DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +kmod-mmc +@DRIVER_WEXT_SUPPORT @!TARGET_uml
  585. TITLE:=Marvell 88W8686 Wireless Driver
  586. FILES:= \
  587. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
  588. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas_sdio.ko
  589. AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
  590. endef
  591. define KernelPackage/mac80211-hwsim
  592. $(call KernelPackage/mac80211/Default)
  593. TITLE:=mac80211 HW simulation device
  594. DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT
  595. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
  596. AUTOLOAD:=$(call AutoProbe,mac80211_hwsim)
  597. endef
  598. define KernelPackage/net-libipw
  599. $(call KernelPackage/mac80211/Default)
  600. TITLE:=libipw for ipw2100 and ipw2200
  601. DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
  602. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.ko
  603. AUTOLOAD:=$(call AutoProbe,libipw)
  604. endef
  605. define KernelPackage/net-libipw/description
  606. Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
  607. endef
  608. IPW2100_NAME:=ipw2100-fw
  609. IPW2100_VERSION:=1.3
  610. define Download/net-ipw2100
  611. URL:=http://bughost.org/firmware/
  612. FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  613. MD5SUM=46aa75bcda1a00efa841f9707bbbd113
  614. endef
  615. $(eval $(call Download,net-ipw2100))
  616. define KernelPackage/net-ipw2100
  617. $(call KernelPackage/mac80211/Default)
  618. TITLE:=Intel IPW2100 driver
  619. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  620. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.ko
  621. AUTOLOAD:=$(call AutoProbe,ipw2100)
  622. endef
  623. define KernelPackage/net-ipw2100/description
  624. Kernel support for Intel IPW2100
  625. Includes:
  626. - ipw2100
  627. endef
  628. IPW2200_NAME:=ipw2200-fw
  629. IPW2200_VERSION:=3.1
  630. define Download/net-ipw2200
  631. URL:=http://bughost.org/firmware/
  632. FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  633. MD5SUM=eaba788643c7cc7483dd67ace70f6e99
  634. endef
  635. $(eval $(call Download,net-ipw2200))
  636. define KernelPackage/net-ipw2200
  637. $(call KernelPackage/mac80211/Default)
  638. TITLE:=Intel IPW2200 driver
  639. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  640. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.ko
  641. AUTOLOAD:=$(call AutoProbe,ipw2200)
  642. endef
  643. define KernelPackage/net-ipw2200/description
  644. Kernel support for Intel IPW2200
  645. Includes:
  646. - ipw2200
  647. endef
  648. define KernelPackage/net-hermes
  649. $(call KernelPackage/mac80211/Default)
  650. TITLE:=Hermes 802.11b chipset support
  651. DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
  652. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco.ko
  653. AUTOLOAD:=$(call AutoProbe,orinoco)
  654. endef
  655. define KernelPackage/net-hermes/description
  656. Kernel support for Hermes 802.11b chipsets
  657. endef
  658. define KernelPackage/net-hermes-pci
  659. $(call KernelPackage/mac80211/Default)
  660. TITLE:=Intersil Prism 2.5 PCI support
  661. DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
  662. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_pci.ko
  663. AUTOLOAD:=$(call AutoProbe,orinoco_pci)
  664. endef
  665. define KernelPackage/net-hermes-pci/description
  666. Kernel modules for Intersil Prism 2.5 PCI support
  667. endef
  668. define KernelPackage/net-hermes-plx
  669. $(call KernelPackage/mac80211/Default)
  670. TITLE:=PLX9052 based PCI adaptor
  671. DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
  672. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_plx.ko
  673. AUTOLOAD:=$(call AutoProbe,orinoco_plx)
  674. endef
  675. define KernelPackage/net-hermes-plx/description
  676. Kernel modules for Hermes in PLX9052 based PCI adaptors
  677. endef
  678. define KernelPackage/net-hermes-pcmcia
  679. $(call KernelPackage/mac80211/Default)
  680. TITLE:=Hermes based PCMCIA adaptors
  681. DEPENDS:=@PCMCIA_SUPPORT +kmod-net-hermes @BROKEN
  682. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_cs.ko
  683. AUTOLOAD:=$(call AutoProbe,orinoco_cs)
  684. endef
  685. define KernelPackage/net-hermes-pcmcia/description
  686. Kernel modules for Hermes based PCMCIA adaptors
  687. endef
  688. define KernelPackage/iwlagn
  689. $(call KernelPackage/mac80211/Default)
  690. DEPENDS:= +kmod-mac80211 @PCI_SUPPORT +@DRIVER_11N_SUPPORT
  691. TITLE:=Intel AGN Wireless support
  692. FILES:= \
  693. $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlwifi.ko \
  694. $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/dvm/iwldvm.ko
  695. AUTOLOAD:=$(call AutoProbe,iwlwifi iwldvm)
  696. MENU:=1
  697. endef
  698. define KernelPackage/iwlagn/description
  699. iwlagn kernel module for Intel 5000/5150/1000/6000/6050/6005/6030/100 support
  700. endef
  701. define KernelPackage/iwlagn/config
  702. if PACKAGE_kmod-iwlagn
  703. config IWL5000_FW
  704. bool "Intel 5000 Firmware"
  705. default y
  706. help
  707. Download and install firmware for:
  708. Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
  709. config IWL5150_FW
  710. bool "Intel 5150 Firmware"
  711. default y
  712. help
  713. Download and install firmware for:
  714. Intel Wireless WiFi 5150AGN
  715. config IWL1000_FW
  716. bool "Intel 1000 Firmware"
  717. default y
  718. help
  719. Download and install firmware for:
  720. Intel Centrino Wireless-N 1000
  721. config IWL6000_FW
  722. bool "Intel 6000 Firmware"
  723. default y
  724. help
  725. Download and install firmware for:
  726. Intel Centrino Ultimate-N 6300 and Advanced-N 6200
  727. config IWL6050_FW
  728. bool "Intel 6050 Firmware"
  729. default y
  730. help
  731. Download and install firmware for:
  732. Intel Centrino Advanced-N + WiMAX 6250 and Wireless-N + WiMAX 6150
  733. config IWL6005_FW
  734. bool "Intel 6005 Firmware"
  735. default y
  736. help
  737. Download and install firmware for:
  738. Intel Centrino Advanced-N 6205
  739. config IWL6030_FW
  740. bool "Intel 6030 Firmware"
  741. default y
  742. help
  743. Download and install firmware for:
  744. Intel Centrino Advanced-N 6230, Wireless-N 1030, Wireless-N 130 and Advanced-N 6235
  745. config IWL7260_FW
  746. bool "Intel 7260 Firmware"
  747. default y
  748. help
  749. Download and install firmware for:
  750. Intel Dual Band Wireless-N 7260 and Intel Dual Band Wireless-AC 7260
  751. config IWL7265_FW
  752. bool "Intel 7265 Firmware"
  753. default y
  754. help
  755. Download and install firmware for:
  756. Intel Wireless 7265
  757. config IWL100_FW
  758. bool "Intel 100 Firmware"
  759. default y
  760. help
  761. Download and install firmware for:
  762. Intel Centrino Wireless-N 100
  763. config IWL2000_FW
  764. bool "Intel 2000 Firmware"
  765. default y
  766. help
  767. Download and install firmware for:
  768. Intel Centrino Wireless-N 2200
  769. config IWL2030_FW
  770. bool "Intel 2030 Firmware"
  771. default y
  772. help
  773. Download and install firmware for:
  774. Intel Centrino Wireless-N 2230
  775. config IWL105_FW
  776. bool "Intel 105 Firmware"
  777. default y
  778. help
  779. Download and install firmware for:
  780. Intel Centrino Wireless-N 105
  781. config IWL135_FW
  782. bool "Intel 135 Firmware"
  783. default y
  784. help
  785. Download and install firmware for:
  786. Intel Centrino Wireless-N 135
  787. config IWL3160_FW
  788. bool "Intel 3160 Firmware"
  789. default y
  790. help
  791. Download and install firmware for:
  792. Intel Wireless 3160
  793. endif
  794. endef
  795. define KernelPackage/iwl-legacy
  796. $(call KernelPackage/mac80211/Default)
  797. DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
  798. TITLE:=Intel legacy Wireless support
  799. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwlegacy.ko
  800. AUTOLOAD:=$(call AutoProbe,iwlegacy)
  801. endef
  802. define KernelPackage/iwl-legacy/description
  803. iwl-legacy kernel module for legacy Intel wireless support
  804. endef
  805. define KernelPackage/iwl3945
  806. $(call KernelPackage/mac80211/Default)
  807. DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
  808. TITLE:=Intel iwl3945 Wireless support
  809. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.ko
  810. AUTOLOAD:=$(call AutoProbe,iwl3945)
  811. endef
  812. define KernelPackage/iwl3945/description
  813. iwl3945 kernel module for Intel 3945 support
  814. endef
  815. define KernelPackage/iwl4965
  816. $(call KernelPackage/mac80211/Default)
  817. DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT
  818. TITLE:=Intel iwl4965 Wireless support
  819. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.ko
  820. AUTOLOAD:=$(call AutoProbe,iwl4965)
  821. endef
  822. define KernelPackage/iwl4965/description
  823. iwl4965 kernel module for Intel 4965 support
  824. endef
  825. define KernelPackage/mwl8k
  826. $(call KernelPackage/mac80211/Default)
  827. TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
  828. URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
  829. DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
  830. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
  831. AUTOLOAD:=$(call AutoProbe,mwl8k)
  832. endef
  833. define KernelPackage/mwl8k/description
  834. Kernel modules for Marvell TOPDOG 802.11 Wireless cards
  835. endef
  836. define KernelPackage/mwifiex-pcie
  837. $(call KernelPackage/mac80211/Default)
  838. TITLE:=Driver for Marvell 802.11n/802.11ac PCIe Wireless cards
  839. URL:=http://wireless.kernel.org/en/users/Drivers/mwifiex
  840. DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
  841. FILES:= \
  842. $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex.ko \
  843. $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex_pcie.ko
  844. AUTOLOAD:=$(call AutoProbe,mwifiex_pcie)
  845. endef
  846. define KernelPackage/mwifiex-pcie/description
  847. Kernel modules for Marvell 802.11n/802.11ac PCIe Wireless cards
  848. endef
  849. define KernelPackage/wlcore
  850. $(call KernelPackage/mac80211/Default)
  851. TITLE:=TI common driver part
  852. DEPENDS+= @TARGET_omap +kmod-mac80211 +@DRIVER_11N_SUPPORT
  853. FILES:= \
  854. $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
  855. $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
  856. AUTOLOAD:=$(call AutoProbe,wlcore wlcore_sdio)
  857. endef
  858. define KernelPackage/wlcore/description
  859. This module contains some common parts needed by TI Wireless drivers.
  860. endef
  861. define KernelPackage/wl12xx
  862. $(call KernelPackage/mac80211/Default)
  863. TITLE:=Driver for TI WL12xx
  864. URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
  865. DEPENDS+= +kmod-wlcore
  866. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko
  867. AUTOLOAD:=$(call AutoProbe,wl12xx)
  868. endef
  869. define KernelPackage/wl12xx/description
  870. Kernel modules for TI WL12xx
  871. endef
  872. define KernelPackage/wl18xx
  873. $(call KernelPackage/mac80211/Default)
  874. TITLE:=Driver for TI WL18xx
  875. URL:=http://wireless.kernel.org/en/users/Drivers/wl18xx
  876. DEPENDS+= +kmod-wlcore
  877. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko
  878. AUTOLOAD:=$(call AutoProbe,wl18xx)
  879. endef
  880. define KernelPackage/wl18xx/description
  881. Kernel modules for TI WL18xx
  882. endef
  883. #Broadcom firmware
  884. ifneq ($(CONFIG_B43_FW_6_30),)
  885. PKG_B43_FWV4_NAME:=broadcom-wl
  886. PKG_B43_FWV4_VERSION:=6.30.163.46
  887. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).wl_apsta.o
  888. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  889. PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  890. PKG_B43_FWV4_MD5SUM:=6fe97e9368d25342a1ab943d3cf3496d
  891. else
  892. ifneq ($(CONFIG_B43_FW_5_10),)
  893. PKG_B43_FWV4_NAME:=broadcom-wl
  894. PKG_B43_FWV4_VERSION:=5.10.56.27.3
  895. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
  896. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
  897. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  898. PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
  899. else
  900. ifneq ($(CONFIG_B43_FW_4_178),)
  901. PKG_B43_FWV4_NAME:=broadcom-wl
  902. PKG_B43_FWV4_VERSION:=4.178.10.4
  903. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
  904. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  905. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  906. PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
  907. else
  908. ifneq ($(CONFIG_B43_FW_5_100_138),)
  909. PKG_B43_FWV4_NAME:=broadcom-wl
  910. PKG_B43_FWV4_VERSION:=5.100.138
  911. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
  912. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  913. PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  914. PKG_B43_FWV4_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
  915. else
  916. PKG_B43_FWV4_NAME:=broadcom-wl
  917. PKG_B43_FWV4_VERSION:=4.150.10.5
  918. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
  919. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  920. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  921. PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
  922. endif
  923. endif
  924. endif
  925. endif
  926. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  927. PKG_B43_FWV4_NAME:=broadcom-wl
  928. PKG_B43_FWV4_VERSION:=5.2
  929. PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
  930. PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
  931. PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
  932. PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
  933. endif
  934. PKG_B43_FWV3_NAME:=wl_apsta
  935. PKG_B43_FWV3_VERSION:=3.130.20.0
  936. PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
  937. PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
  938. PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
  939. define Download/b43
  940. FILE:=$(PKG_B43_FWV4_SOURCE)
  941. URL:=$(PKG_B43_FWV4_SOURCE_URL)
  942. MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
  943. endef
  944. $(eval $(call Download,b43))
  945. define Download/b43legacy
  946. FILE:=$(PKG_B43_FWV3_SOURCE)
  947. URL:=$(PKG_B43_FWV3_SOURCE_URL)
  948. MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
  949. endef
  950. $(eval $(call Download,b43legacy))
  951. define KernelPackage/b43
  952. $(call KernelPackage/mac80211/Default)
  953. TITLE:=Broadcom 43xx wireless support
  954. URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
  955. KCONFIG:= \
  956. CONFIG_HW_RANDOM=y
  957. # Depend on PCI_SUPPORT to make sure we can select kmod-bcma or kmod-ssb
  958. DEPENDS += \
  959. @PCI_SUPPORT +kmod-mac80211 \
  960. $(if $(CONFIG_PACKAGE_B43_USE_SSB),+kmod-ssb) \
  961. $(if $(CONFIG_PACKAGE_B43_USE_BCMA),+kmod-bcma)
  962. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
  963. AUTOLOAD:=$(call AutoProbe,b43)
  964. MENU:=1
  965. endef
  966. define KernelPackage/b43/config
  967. config PACKAGE_B43_USE_SSB
  968. select PACKAGE_kmod-ssb
  969. tristate
  970. depends on !TARGET_brcm47xx && !TARGET_brcm63xx
  971. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
  972. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_SSB
  973. config PACKAGE_B43_USE_BCMA
  974. select PACKAGE_kmod-bcma
  975. tristate
  976. depends on !TARGET_brcm47xx
  977. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
  978. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA
  979. if PACKAGE_kmod-b43
  980. choice
  981. prompt "b43 firmware version"
  982. default B43_FW_5_100_138
  983. help
  984. This option allows you to select the version of the b43 firmware.
  985. config B43_FW_4_150
  986. bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
  987. help
  988. Old stable firmware for BCM43xx devices.
  989. If unsure, select this.
  990. config B43_FW_4_178
  991. bool "Firmware 478.104 from driver 4.178.10.4"
  992. help
  993. Older firmware for BCM43xx devices.
  994. If unsure, select the "stable" firmware.
  995. config B43_FW_5_10
  996. bool "Firmware 508.1084 from driver 5.10.56.27"
  997. help
  998. Older firmware for BCM43xx devices.
  999. If unsure, select the "stable" firmware.
  1000. config B43_FW_5_100_138
  1001. bool "Firmware 666.2 from driver 5.100.138 (stable)"
  1002. help
  1003. The currently default firmware for BCM43xx devices.
  1004. This firmware currently gets most of the testing and is needed for some N-PHY devices.
  1005. If unsure, select the this firmware.
  1006. config B43_FW_6_30
  1007. bool "Firmware 784.2 from driver 6.30.163.46 (experimental)"
  1008. help
  1009. Newer experimental firmware for BCM43xx devices.
  1010. This firmware is mostly untested.
  1011. If unsure, select the "stable" firmware.
  1012. config B43_OPENFIRMWARE
  1013. bool "Open FirmWare for WiFi networks"
  1014. help
  1015. Opensource firmware for BCM43xx devices.
  1016. Do _not_ select this, unless you know what you are doing.
  1017. The Opensource firmware is not suitable for embedded devices, yet.
  1018. It does not support QoS, which is bad for AccessPoints.
  1019. It does not support hardware crypto acceleration, which is a showstopper
  1020. for embedded devices with low CPU resources.
  1021. If unsure, select the "stable" firmware.
  1022. endchoice
  1023. config B43_FW_SQUASH
  1024. bool "Remove unnecessary firmware files"
  1025. depends on !B43_OPENFIRMWARE
  1026. default y
  1027. help
  1028. This options allows you to remove unnecessary b43 firmware files
  1029. from the final rootfs image. This can reduce the rootfs size by
  1030. up to 200k.
  1031. If unsure, say Y.
  1032. config B43_FW_SQUASH_COREREVS
  1033. string "Core revisions to include"
  1034. depends on B43_FW_SQUASH
  1035. default "5,6,7,8,9,10,11,13,15" if TARGET_brcm47xx_legacy
  1036. default "16,28,29,30" if TARGET_brcm47xx_mips74k
  1037. default "5,6,7,8,9,10,11,13,15,16,28,29,30"
  1038. help
  1039. This is a comma seperated list of core revision numbers.
  1040. Example (keep files for rev5 only):
  1041. 5
  1042. Example (keep files for rev5 and rev11):
  1043. 5,11
  1044. config B43_FW_SQUASH_PHYTYPES
  1045. string "PHY types to include"
  1046. depends on B43_FW_SQUASH
  1047. default "G,LP" if TARGET_brcm47xx_legacy
  1048. default "N,HT" if TARGET_brcm47xx_mips74k
  1049. default "G,LP,N,HT"
  1050. help
  1051. This is a comma seperated list of PHY types:
  1052. A => A-PHY
  1053. AG => Dual A-PHY G-PHY
  1054. G => G-PHY
  1055. LP => LP-PHY
  1056. N => N-PHY
  1057. HT => HT-PHY
  1058. LCN => LCN-PHY
  1059. LCN40 => LCN40-PHY
  1060. AC => AC-PHY
  1061. Example (keep files for G-PHY only):
  1062. G
  1063. Example (keep files for G-PHY and N-PHY):
  1064. G,N
  1065. choice
  1066. prompt "Supported buses"
  1067. default PACKAGE_B43_BUSES_BCMA_AND_SSB
  1068. help
  1069. This allows choosing buses that b43 should support.
  1070. config PACKAGE_B43_BUSES_BCMA_AND_SSB
  1071. depends on !TARGET_brcm47xx_legacy && !TARGET_brcm47xx_mips74k
  1072. bool "BCMA and SSB"
  1073. config PACKAGE_B43_BUSES_BCMA
  1074. depends on !TARGET_brcm47xx_legacy
  1075. bool "BCMA only"
  1076. config PACKAGE_B43_BUSES_SSB
  1077. depends on !TARGET_brcm47xx_mips74k
  1078. bool "SSB only"
  1079. endchoice
  1080. config PACKAGE_B43_DEBUG
  1081. bool "Enable debug output and debugfs for b43"
  1082. default n
  1083. help
  1084. Enable additional debug output and runtime sanity checks for b43
  1085. and enables the debugfs interface.
  1086. If unsure, say N.
  1087. config PACKAGE_B43_PIO
  1088. bool "Enable support for PIO transfer mode"
  1089. default n
  1090. help
  1091. Enable support for using PIO instead of DMA. Unless you have DMA
  1092. transfer problems you don't need this.
  1093. If unsure, say N.
  1094. config PACKAGE_B43_PHY_G
  1095. bool "Enable support for G-PHYs"
  1096. default n if TARGET_brcm47xx_mips74k
  1097. default y
  1098. help
  1099. Enable support for G-PHY. This includes support for the following devices:
  1100. PCI: BCM4306, BCM4311, BCM4318
  1101. SoC: BCM5352E, BCM4712
  1102. If unsure, say Y.
  1103. config PACKAGE_B43_PHY_N
  1104. bool "Enable support for N-PHYs"
  1105. default n if TARGET_brcm47xx_legacy
  1106. default y
  1107. help
  1108. Enable support for N-PHY. This includes support for the following devices:
  1109. PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
  1110. SoC: BCM4716, BCM4717, BCM4718
  1111. Currently only 11g speed is available.
  1112. If unsure, say Y.
  1113. config PACKAGE_B43_PHY_LP
  1114. bool "Enable support for LP-PHYs"
  1115. default n if TARGET_brcm47xx_mips74k
  1116. default y
  1117. help
  1118. Enable support for LP-PHY. This includes support for the following devices:
  1119. PCI: BCM4312
  1120. SoC: BCM5354
  1121. If unsure, say Y.
  1122. config PACKAGE_B43_PHY_HT
  1123. bool "Enable support for HT-PHYs"
  1124. default n if TARGET_brcm47xx_legacy
  1125. default y
  1126. help
  1127. Enable support for HT-PHY. This includes support for the following devices:
  1128. PCI: BCM4331
  1129. Currently only 11g speed is available.
  1130. If unsure, say Y.
  1131. config PACKAGE_B43_PHY_LCN
  1132. bool "Enable support for LCN-PHYs"
  1133. depends on BROKEN
  1134. default n
  1135. help
  1136. Currently broken.
  1137. If unsure, say N.
  1138. endif
  1139. endef
  1140. define KernelPackage/b43/description
  1141. Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
  1142. endef
  1143. define KernelPackage/b43legacy
  1144. $(call KernelPackage/mac80211/Default)
  1145. TITLE:=Broadcom 43xx-legacy wireless support
  1146. URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
  1147. KCONFIG:= \
  1148. CONFIG_HW_RANDOM=y
  1149. DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
  1150. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
  1151. AUTOLOAD:=$(call AutoProbe,b43legacy)
  1152. MENU:=1
  1153. endef
  1154. define KernelPackage/b43legacy/config
  1155. if PACKAGE_kmod-b43legacy
  1156. config B43LEGACY_FW_SQUASH
  1157. bool "Remove unnecessary firmware files"
  1158. default y
  1159. help
  1160. This options allows you to remove unnecessary b43legacy firmware files
  1161. from the final rootfs image. This can reduce the rootfs size by
  1162. up to 50k.
  1163. If unsure, say Y.
  1164. config B43LEGACY_FW_SQUASH_COREREVS
  1165. string "Core revisions to include"
  1166. depends on B43LEGACY_FW_SQUASH
  1167. default "1,2,3,4"
  1168. help
  1169. This is a comma seperated list of core revision numbers.
  1170. Example (keep files for rev4 only):
  1171. 4
  1172. Example (keep files for rev2 and rev4):
  1173. 2,4
  1174. endif
  1175. endef
  1176. define KernelPackage/b43legacy/description
  1177. Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
  1178. endef
  1179. define KernelPackage/brcmutil
  1180. $(call KernelPackage/mac80211/Default)
  1181. TITLE:=Broadcom IEEE802.11n common driver parts
  1182. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1183. DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
  1184. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
  1185. AUTOLOAD:=$(call AutoProbe,brcmutil)
  1186. MENU:=1
  1187. endef
  1188. define KernelPackage/brcmutil/description
  1189. This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
  1190. endef
  1191. define KernelPackage/brcmutil/config
  1192. if PACKAGE_kmod-brcmutil
  1193. config PACKAGE_BRCM80211_DEBUG
  1194. bool "Broadcom wireless driver debugging"
  1195. help
  1196. Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
  1197. endif
  1198. endef
  1199. PKG_BRCMSMAC_FW_NAME:=broadcom-wl
  1200. PKG_BRCMSMAC_FW_VERSION:=5.100.138
  1201. PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
  1202. PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
  1203. PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  1204. PKG_BRCMSMAC_FW_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
  1205. define Download/brcmsmac
  1206. FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
  1207. URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
  1208. MD5SUM:=$(PKG_BRCMSMAC_FW_MD5SUM)
  1209. endef
  1210. $(eval $(call Download,brcmsmac))
  1211. define KernelPackage/brcmsmac
  1212. $(call KernelPackage/mac80211/Default)
  1213. TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
  1214. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1215. DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil
  1216. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
  1217. AUTOLOAD:=$(call AutoProbe,brcmsmac)
  1218. MENU:=1
  1219. endef
  1220. define KernelPackage/brcmsmac/description
  1221. Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
  1222. endef
  1223. define KernelPackage/brcmsmac/config
  1224. if PACKAGE_kmod-brcmsmac
  1225. config BRCMSMAC_USE_FW_FROM_WL
  1226. bool "Use firmware extracted from broadcom proprietary driver"
  1227. default y
  1228. help
  1229. Instead of using the official brcmsmac firmware a firmware
  1230. version 666.2 extracted from the proprietary Broadcom driver
  1231. is used. This is needed to get core rev 17 used in bcm4716
  1232. to work.
  1233. If unsure, say Y.
  1234. endif
  1235. endef
  1236. define KernelPackage/brcmfmac
  1237. $(call KernelPackage/mac80211/Default)
  1238. TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
  1239. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1240. DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +@DRIVER_11N_SUPPORT +kmod-brcmutil +BRCMFMAC_SDIO:kmod-mmc +BRCMFMAC_USB:kmod-usb-core
  1241. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
  1242. AUTOLOAD:=$(call AutoProbe,brcmfmac)
  1243. endef
  1244. define KernelPackage/brcmfmac/description
  1245. Kernel module for Broadcom IEEE802.11n USB Wireless cards
  1246. endef
  1247. define KernelPackage/brcmfmac/config
  1248. if PACKAGE_kmod-brcmfmac
  1249. config BRCMFMAC_SDIO
  1250. bool "Enable SDIO bus interface support"
  1251. default n
  1252. help
  1253. Enable support for cards attached to an SDIO bus.
  1254. Select this option only if you are sure that your
  1255. board has a Broadcom wireless chip atacched to
  1256. that bus.
  1257. config BRCMFMAC_USB
  1258. bool "Enable USB bus interface support"
  1259. depends on USB_SUPPORT
  1260. default y
  1261. help
  1262. Supported USB connected chipsets:
  1263. BCM43235, BCM43236, BCM43238 (all in revision 3 only)
  1264. BCM43143, BCM43242, BCM43566, BCM43569
  1265. config BRCMFMAC_PCIE
  1266. bool "Enable PCIE bus interface support"
  1267. depends on PCI_SUPPORT
  1268. default y
  1269. help
  1270. Supported PCIe connected chipsets:
  1271. BCM4354, BCM4356, BCM43567, BCM43570, BCM43602
  1272. endif
  1273. endef
  1274. config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
  1275. config-y:= \
  1276. WLAN \
  1277. NL80211_TESTMODE \
  1278. CFG80211_WEXT \
  1279. CFG80211_INTERNAL_REGDB \
  1280. CFG80211_CERTIFICATION_ONUS \
  1281. MAC80211_RC_MINSTREL \
  1282. MAC80211_RC_MINSTREL_HT \
  1283. MAC80211_RC_MINSTREL_VHT \
  1284. MAC80211_RC_DEFAULT_MINSTREL \
  1285. config-$(call config_package,cfg80211) += CFG80211
  1286. config-$(call config_package,mac80211) += MAC80211
  1287. config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
  1288. ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
  1289. config-y += \
  1290. CFG80211_DEBUGFS \
  1291. MAC80211_DEBUGFS \
  1292. ATH9K_DEBUGFS \
  1293. ATH9K_HTC_DEBUGFS \
  1294. ATH10K_DEBUGFS \
  1295. CARL9170_DEBUGFS \
  1296. ATH5K_DEBUG
  1297. endif
  1298. config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
  1299. config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
  1300. config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG
  1301. config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
  1302. config-$(call config_package,ath9k) += ATH9K
  1303. config-$(call config_package,ath9k-common) += ATH9K_COMMON
  1304. config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
  1305. config-$(CONFIG_PCI) += ATH9K_PCI
  1306. config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
  1307. config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
  1308. config-$(call config_package,ath9k-htc) += ATH9K_HTC
  1309. config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
  1310. config-$(call config_package,ath5k) += ATH5K
  1311. ifdef CONFIG_TARGET_ath25
  1312. config-y += ATH5K_AHB
  1313. else
  1314. config-y += ATH5K_PCI
  1315. endif
  1316. config-$(call config_package,carl9170) += CARL9170
  1317. config-$(call config_package,b43) += B43
  1318. config-$(CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB) += B43_BUSES_BCMA_AND_SSB
  1319. config-$(CONFIG_PACKAGE_B43_BUSES_BCMA) += B43_BUSES_BCMA
  1320. config-$(CONFIG_PACKAGE_B43_BUSES_SSB) += B43_BUSES_SSB
  1321. config-$(CONFIG_PACKAGE_B43_PHY_G) += B43_PHY_G
  1322. config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
  1323. config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
  1324. config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
  1325. config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
  1326. config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
  1327. config-$(call config_package,b43legacy) += B43LEGACY
  1328. config-y += B43LEGACY_DMA_MODE
  1329. config-$(call config_package,brcmutil) += BRCMUTIL
  1330. config-$(call config_package,brcmsmac) += BRCMSMAC
  1331. config-$(call config_package,brcmfmac) += BRCMFMAC
  1332. config-$(CONFIG_BRCMFMAC_SDIO) += BRCMFMAC_SDIO
  1333. config-$(CONFIG_BRCMFMAC_USB) += BRCMFMAC_USB
  1334. config-$(CONFIG_BRCMFMAC_PCIE) += BRCMFMAC_PCIE
  1335. config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
  1336. config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
  1337. config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
  1338. config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI
  1339. config-$(call config_package,rt2x00-mmio) += RT2X00_LIB_MMIO
  1340. config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
  1341. config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
  1342. config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
  1343. config-$(call config_package,rt2400-pci) += RT2400PCI
  1344. config-$(call config_package,rt2500-pci) += RT2500PCI
  1345. config-$(call config_package,rt2500-usb) += RT2500USB
  1346. config-$(call config_package,rt61-pci) += RT61PCI
  1347. config-$(call config_package,rt73-usb) += RT73USB
  1348. config-$(call config_package,rt2800-lib) += RT2800_LIB
  1349. config-$(call config_package,rt2800-soc) += RT2800SOC
  1350. config-$(call config_package,rt2800-pci) += RT2800PCI
  1351. config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
  1352. config-$(call config_package,rt2800-usb) += RT2800USB
  1353. config-y += RT2800USB_RT33XX RT2800USB_RT35XX RT2800USB_RT3573 RT2800USB_RT53XX RT2800USB_RT55XX
  1354. config-$(call config_package,iwl-legacy) += IWLEGACY
  1355. config-$(call config_package,iwl3945) += IWL3945
  1356. config-$(call config_package,iwl4965) += IWL4965
  1357. config-$(call config_package,iwlagn) += IWLWIFI IWLDVM
  1358. config-$(call config_package,net-libipw) += LIBIPW
  1359. config-$(call config_package,net-ipw2100) += IPW2100
  1360. config-$(call config_package,net-ipw2200) += IPW2200
  1361. config-$(call config_package,p54-common) += P54_COMMON
  1362. config-$(call config_package,p54-pci) += P54_PCI
  1363. config-$(call config_package,p54-usb) += P54_USB
  1364. config-$(call config_package,p54-spi) += P54_SPI
  1365. config-$(call config_package,net-hermes) += HERMES
  1366. config-$(call config_package,net-hermes-pci) += PCI_HERMES
  1367. config-$(call config_package,net-hermes-plx) += PLX_HERMES
  1368. config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
  1369. config-y += HERMES_PRISM
  1370. config-$(call config_package,adm8211) += ADM8211
  1371. config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
  1372. config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
  1373. config-$(call config_package,mwl8k) += MWL8K
  1374. config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
  1375. config-$(call config_package,rtl8180) += RTL8180
  1376. config-$(call config_package,rtl8187) += RTL8187
  1377. config-$(call config_package,wlcore) += WLCORE WLCORE_SDIO
  1378. config-$(call config_package,wl12xx) += WL12XX
  1379. config-$(call config_package,wl18xx) += WL18XX
  1380. config-y += WL_TI WILINK_PLATFORM_DATA
  1381. config-$(call config_package,zd1211rw) += ZD1211RW
  1382. config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
  1383. config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
  1384. config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
  1385. config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
  1386. config-$(call config_package,rtl8192ce) += RTL8192CE
  1387. config-$(call config_package,rtl8192se) += RTL8192SE
  1388. config-$(call config_package,rtl8192de) += RTL8192DE
  1389. config-$(call config_package,rtl8192cu) += RTL8192CU
  1390. config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
  1391. config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
  1392. MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
  1393. CROSS_COMPILE="$(KERNEL_CROSS)" \
  1394. ARCH="$(LINUX_KARCH)" \
  1395. EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
  1396. KLIB_BUILD="$(LINUX_DIR)" \
  1397. MODPROBE=true \
  1398. KLIB=$(TARGET_MODULES_DIR) \
  1399. KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
  1400. KBUILD_LDFLAGS_MODULE_PREREQ=
  1401. ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
  1402. MAKE_OPTS += V=1
  1403. endif
  1404. define ConfigVars
  1405. $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
  1406. ))
  1407. endef
  1408. define mac80211_config
  1409. $(call ConfigVars,m)$(call ConfigVars,y)
  1410. endef
  1411. $(eval $(call shexport,mac80211_config))
  1412. define Build/Prepare
  1413. rm -rf $(PKG_BUILD_DIR)
  1414. mkdir -p $(PKG_BUILD_DIR)
  1415. $(PKG_UNPACK)
  1416. $(Build/Patch)
  1417. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  1418. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  1419. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
  1420. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
  1421. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
  1422. rm -rf \
  1423. $(PKG_BUILD_DIR)/include/linux/ssb \
  1424. $(PKG_BUILD_DIR)/include/linux/bcma \
  1425. $(PKG_BUILD_DIR)/include/net/bluetooth
  1426. rm -f \
  1427. $(PKG_BUILD_DIR)/include/linux/cordic.h \
  1428. $(PKG_BUILD_DIR)/include/linux/crc8.h \
  1429. $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
  1430. $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
  1431. $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
  1432. $(PKG_BUILD_DIR)/include/net/ieee80211.h
  1433. echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
  1434. $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
  1435. endef
  1436. ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
  1437. define Build/Compile/kmod
  1438. rm -rf $(PKG_BUILD_DIR)/modules
  1439. +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
  1440. endef
  1441. endif
  1442. define Build/Configure
  1443. cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
  1444. cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
  1445. cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
  1446. endef
  1447. define Build/Compile
  1448. $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
  1449. $(MAKE) $(MAKE_OPTS) allnoconfig
  1450. $(call Build/Compile/kmod)
  1451. endef
  1452. define Build/InstallDev
  1453. mkdir -p \
  1454. $(1)/usr/include/mac80211 \
  1455. $(1)/usr/include/mac80211-backport \
  1456. $(1)/usr/include/mac80211/ath \
  1457. $(1)/usr/include/net/mac80211
  1458. $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
  1459. $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
  1460. $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
  1461. $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
  1462. rm -f $(1)/usr/include/mac80211-backport/linux/module.h
  1463. endef
  1464. define KernelPackage/libertas-usb/install
  1465. $(INSTALL_DIR) $(1)/lib/firmware/libertas
  1466. $(INSTALL_DATA) \
  1467. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
  1468. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
  1469. $(1)/lib/firmware/libertas/
  1470. endef
  1471. define KernelPackage/libertas-sdio/install
  1472. $(INSTALL_DIR) $(1)/lib/firmware/libertas
  1473. $(INSTALL_DATA) \
  1474. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
  1475. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
  1476. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
  1477. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
  1478. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
  1479. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
  1480. $(1)/lib/firmware/libertas
  1481. endef
  1482. define KernelPackage/cfg80211/install
  1483. $(INSTALL_DIR) $(1)/lib/wifi $(1)/lib/netifd/wireless
  1484. $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
  1485. $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
  1486. endef
  1487. define KernelPackage/p54-pci/install
  1488. $(INSTALL_DIR) $(1)/lib/firmware
  1489. $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
  1490. endef
  1491. define KernelPackage/p54-usb/install
  1492. $(INSTALL_DIR) $(1)/lib/firmware
  1493. $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
  1494. endef
  1495. define KernelPackage/p54-spi/install
  1496. $(INSTALL_DIR) $(1)/lib/firmware
  1497. $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
  1498. endef
  1499. define KernelPackage/rt61-pci/install
  1500. $(INSTALL_DIR) $(1)/lib/firmware
  1501. $(INSTALL_DATA) \
  1502. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
  1503. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
  1504. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
  1505. $(1)/lib/firmware/
  1506. endef
  1507. define KernelPackage/rt73-usb/install
  1508. $(INSTALL_DIR) $(1)/lib/firmware
  1509. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
  1510. endef
  1511. define KernelPackage/rt2800-pci/install
  1512. $(INSTALL_DIR) $(1)/lib/firmware
  1513. $(INSTALL_DATA) \
  1514. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
  1515. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
  1516. $(1)/lib/firmware
  1517. endef
  1518. define KernelPackage/rt2800-usb/install
  1519. $(INSTALL_DIR) $(1)/lib/firmware
  1520. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
  1521. endef
  1522. define KernelPackage/wl12xx/install
  1523. $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
  1524. $(INSTALL_DATA) \
  1525. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
  1526. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
  1527. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
  1528. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
  1529. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-mr.bin \
  1530. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-plt.bin \
  1531. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-sr.bin \
  1532. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-nvs.bin \
  1533. $(1)/lib/firmware/ti-connectivity
  1534. endef
  1535. define KernelPackage/wl18xx/install
  1536. $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
  1537. $(INSTALL_DATA) \
  1538. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-conf.bin \
  1539. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-fw-3.bin \
  1540. $(1)/lib/firmware/ti-connectivity
  1541. endef
  1542. define KernelPackage/zd1211rw/install
  1543. $(INSTALL_DIR) $(1)/lib/firmware/zd1211
  1544. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
  1545. endef
  1546. define KernelPackage/carl9170/install
  1547. $(INSTALL_DIR) $(1)/lib/firmware
  1548. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/carl9170-1.fw $(1)/lib/firmware
  1549. endef
  1550. define KernelPackage/ath9k-htc/install
  1551. $(INSTALL_DIR) $(1)/lib/firmware
  1552. $(INSTALL_DATA) \
  1553. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
  1554. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
  1555. $(1)/lib/firmware/
  1556. endef
  1557. define KernelPackage/ath10k/install
  1558. $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
  1559. $(INSTALL_DATA) \
  1560. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
  1561. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
  1562. ifeq ($(CONFIG_ATH10K_STA_FW),y)
  1563. $(INSTALL_DATA) \
  1564. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/main/firmware-2.bin_999.999.0.636 \
  1565. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
  1566. else
  1567. $(INSTALL_DATA) \
  1568. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/firmware-4.bin_10.2.4.45 \
  1569. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-4.bin
  1570. endif
  1571. endef
  1572. define KernelPackage/mwl8k/install
  1573. $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
  1574. $(INSTALL_DATA) \
  1575. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
  1576. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
  1577. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
  1578. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
  1579. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
  1580. $(1)/lib/firmware/mwl8k/
  1581. endef
  1582. define KernelPackage/mwifiex-pcie/install
  1583. $(INSTALL_DIR) $(1)/lib/firmware/mrvl
  1584. $(INSTALL_DATA) \
  1585. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mrvl/pcie8897_uapsta.bin \
  1586. $(1)/lib/firmware/mrvl/
  1587. endef
  1588. define KernelPackage/net-ipw2100/install
  1589. $(INSTALL_DIR) $(1)/lib/firmware
  1590. $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
  1591. endef
  1592. define KernelPackage/net-ipw2200/install
  1593. $(INSTALL_DIR) $(1)/lib/firmware
  1594. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
  1595. endef
  1596. define KernelPackage/iwlagn/install
  1597. $(INSTALL_DIR) $(1)/lib/firmware
  1598. ifneq ($(CONFIG_IWL5000_FW),)
  1599. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
  1600. endif
  1601. ifneq ($(CONFIG_IWL5150_FW),)
  1602. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
  1603. endif
  1604. ifneq ($(CONFIG_IWL1000_FW),)
  1605. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
  1606. endif
  1607. ifneq ($(CONFIG_IWL6000_FW),)
  1608. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
  1609. endif
  1610. ifneq ($(CONFIG_IWL6050_FW),)
  1611. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
  1612. endif
  1613. ifneq ($(CONFIG_IWL6005_FW),)
  1614. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
  1615. endif
  1616. ifneq ($(CONFIG_IWL6030_FW),)
  1617. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
  1618. endif
  1619. ifneq ($(CONFIG_IWL7260_FW),)
  1620. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7260-9.ucode $(1)/lib/firmware
  1621. endif
  1622. ifneq ($(CONFIG_IWL7265_FW),)
  1623. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7265-9.ucode $(1)/lib/firmware
  1624. endif
  1625. ifneq ($(CONFIG_IWL100_FW),)
  1626. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
  1627. endif
  1628. ifneq ($(CONFIG_IWL2000_FW),)
  1629. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
  1630. endif
  1631. ifneq ($(CONFIG_IWL2030_FW),)
  1632. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
  1633. endif
  1634. ifneq ($(CONFIG_IWL105_FW),)
  1635. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
  1636. endif
  1637. ifneq ($(CONFIG_IWL135_FW),)
  1638. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
  1639. endif
  1640. ifneq ($(CONFIG_IWL3160_FW),)
  1641. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3160-9.ucode $(1)/lib/firmware
  1642. endif
  1643. endef
  1644. define KernelPackage/iwl3945/install
  1645. $(INSTALL_DIR) $(1)/lib/firmware
  1646. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
  1647. endef
  1648. define KernelPackage/iwl4965/install
  1649. $(INSTALL_DIR) $(1)/lib/firmware
  1650. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
  1651. endef
  1652. define KernelPackage/b43/install
  1653. rm -rf $(1)/lib/firmware/
  1654. ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
  1655. tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1656. else
  1657. tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1658. endif
  1659. $(INSTALL_DIR) $(1)/lib/firmware/
  1660. ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
  1661. $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
  1662. $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
  1663. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
  1664. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
  1665. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
  1666. else
  1667. b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
  1668. endif
  1669. ifneq ($(CONFIG_B43_FW_SQUASH),)
  1670. b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
  1671. endif
  1672. endef
  1673. define KernelPackage/b43legacy/install
  1674. $(INSTALL_DIR) $(1)/lib/firmware/
  1675. b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
  1676. ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
  1677. b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
  1678. endif
  1679. endef
  1680. define KernelPackage/brcmsmac/install
  1681. $(INSTALL_DIR) $(1)/lib/firmware/brcm
  1682. ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
  1683. tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1684. b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
  1685. else
  1686. $(INSTALL_DATA) \
  1687. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
  1688. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
  1689. $(1)/lib/firmware/brcm/
  1690. endif
  1691. endef
  1692. define KernelPackage/brcmfmac/install
  1693. $(INSTALL_DIR) $(1)/lib/firmware/brcm
  1694. ifneq ($(CONFIG_BRCMFMAC_USB),)
  1695. $(INSTALL_DATA) \
  1696. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
  1697. $(1)/lib/firmware/brcm/
  1698. $(INSTALL_DATA) \
  1699. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43143.bin \
  1700. $(1)/lib/firmware/brcm/
  1701. endif
  1702. ifneq ($(CONFIG_BRCMFMAC_PCIE),)
  1703. $(INSTALL_DATA) \
  1704. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43602-pcie.ap.bin \
  1705. $(1)/lib/firmware/brcm/brcmfmac43602-pcie.bin
  1706. endif
  1707. endef
  1708. $(eval $(call KernelPackage,adm8211))
  1709. $(eval $(call KernelPackage,ath5k))
  1710. $(eval $(call KernelPackage,lib80211))
  1711. $(eval $(call KernelPackage,libertas-usb))
  1712. $(eval $(call KernelPackage,libertas-sdio))
  1713. $(eval $(call KernelPackage,cfg80211))
  1714. $(eval $(call KernelPackage,mac80211))
  1715. $(eval $(call KernelPackage,p54-common))
  1716. $(eval $(call KernelPackage,p54-pci))
  1717. $(eval $(call KernelPackage,p54-usb))
  1718. $(eval $(call KernelPackage,p54-spi))
  1719. $(eval $(call KernelPackage,rt2x00-lib))
  1720. $(eval $(call KernelPackage,rt2x00-mmio))
  1721. $(eval $(call KernelPackage,rt2x00-pci))
  1722. $(eval $(call KernelPackage,rt2x00-usb))
  1723. $(eval $(call KernelPackage,rt2800-lib))
  1724. $(eval $(call KernelPackage,rt2400-pci))
  1725. $(eval $(call KernelPackage,rt2500-pci))
  1726. $(eval $(call KernelPackage,rt2500-usb))
  1727. $(eval $(call KernelPackage,rt61-pci))
  1728. $(eval $(call KernelPackage,rt73-usb))
  1729. $(eval $(call KernelPackage,rt2800-mmio))
  1730. $(eval $(call KernelPackage,rt2800-soc))
  1731. $(eval $(call KernelPackage,rt2800-pci))
  1732. $(eval $(call KernelPackage,rt2800-usb))
  1733. $(eval $(call KernelPackage,rtl8180))
  1734. $(eval $(call KernelPackage,rtl8187))
  1735. $(eval $(call KernelPackage,rtlwifi))
  1736. $(eval $(call KernelPackage,rtlwifi-pci))
  1737. $(eval $(call KernelPackage,rtlwifi-usb))
  1738. $(eval $(call KernelPackage,rtl8192c-common))
  1739. $(eval $(call KernelPackage,rtl8192ce))
  1740. $(eval $(call KernelPackage,rtl8192se))
  1741. $(eval $(call KernelPackage,rtl8192de))
  1742. $(eval $(call KernelPackage,rtl8192cu))
  1743. $(eval $(call KernelPackage,zd1211rw))
  1744. $(eval $(call KernelPackage,mac80211-hwsim))
  1745. $(eval $(call KernelPackage,ath9k-common))
  1746. $(eval $(call KernelPackage,ath9k))
  1747. $(eval $(call KernelPackage,ath9k-htc))
  1748. $(eval $(call KernelPackage,ath10k))
  1749. $(eval $(call KernelPackage,ath))
  1750. $(eval $(call KernelPackage,carl9170))
  1751. $(eval $(call KernelPackage,b43))
  1752. $(eval $(call KernelPackage,b43legacy))
  1753. $(eval $(call KernelPackage,brcmutil))
  1754. $(eval $(call KernelPackage,brcmsmac))
  1755. $(eval $(call KernelPackage,brcmfmac))
  1756. $(eval $(call KernelPackage,net-libipw))
  1757. $(eval $(call KernelPackage,net-ipw2100))
  1758. $(eval $(call KernelPackage,net-ipw2200))
  1759. $(eval $(call KernelPackage,iwlagn))
  1760. $(eval $(call KernelPackage,iwl-legacy))
  1761. $(eval $(call KernelPackage,iwl4965))
  1762. $(eval $(call KernelPackage,iwl3945))
  1763. $(eval $(call KernelPackage,mwl8k))
  1764. $(eval $(call KernelPackage,mwifiex-pcie))
  1765. $(eval $(call KernelPackage,net-hermes))
  1766. $(eval $(call KernelPackage,net-hermes-pci))
  1767. $(eval $(call KernelPackage,net-hermes-plx))
  1768. $(eval $(call KernelPackage,net-hermes-pcmcia))
  1769. $(eval $(call KernelPackage,wlcore))
  1770. $(eval $(call KernelPackage,wl12xx))
  1771. $(eval $(call KernelPackage,wl18xx))