Makefile 66 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063
  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-06-22
  11. PKG_RELEASE:=1
  12. PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
  13. PKG_BACKPORT_VERSION:=
  14. PKG_MD5SUM:=352b2b46d36a72aadc96161a3cefdb1c
  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:=@!LINUX_4_1
  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:=b46f3e01a6c1f9150fb4612ef53611d714565842
  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/carl9170
  533. $(call KernelPackage/mac80211/Default)
  534. TITLE:=Driver for Atheros AR9170 USB sticks
  535. DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT
  536. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
  537. AUTOLOAD:=$(call AutoProbe,carl9170)
  538. endef
  539. define KernelPackage/lib80211
  540. $(call KernelPackage/mac80211/Default)
  541. TITLE:=802.11 Networking stack
  542. DEPENDS:=+kmod-cfg80211
  543. FILES:= \
  544. $(PKG_BUILD_DIR)/net/wireless/lib80211.ko \
  545. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_wep.ko \
  546. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_ccmp.ko \
  547. $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_tkip.ko
  548. AUTOLOAD:=$(call AutoProbe, \
  549. lib80211 \
  550. lib80211_crypt_wep \
  551. lib80211_crypt_ccmp \
  552. lib80211_crypt_tkip \
  553. )
  554. endef
  555. define KernelPackage/lib80211/description
  556. Kernel modules for 802.11 Networking stack
  557. Includes:
  558. - lib80211
  559. - lib80211_crypt_wep
  560. - lib80211_crypt_tkip
  561. - lib80211_crytp_ccmp
  562. endef
  563. define KernelPackage/libertas-usb
  564. $(call KernelPackage/mac80211/Default)
  565. DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
  566. TITLE:=Marvell 88W8015 Wireless Driver
  567. FILES:= \
  568. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
  569. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.ko
  570. AUTOLOAD:=$(call AutoProbe,libertas usb8xxx)
  571. endef
  572. define KernelPackage/libertas-sdio
  573. $(call KernelPackage/mac80211/Default)
  574. DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +kmod-mmc +@DRIVER_WEXT_SUPPORT @!TARGET_uml
  575. TITLE:=Marvell 88W8686 Wireless Driver
  576. FILES:= \
  577. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
  578. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas_sdio.ko
  579. AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
  580. endef
  581. define KernelPackage/mac80211-hwsim
  582. $(call KernelPackage/mac80211/Default)
  583. TITLE:=mac80211 HW simulation device
  584. DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT
  585. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
  586. AUTOLOAD:=$(call AutoProbe,mac80211_hwsim)
  587. endef
  588. define KernelPackage/net-libipw
  589. $(call KernelPackage/mac80211/Default)
  590. TITLE:=libipw for ipw2100 and ipw2200
  591. DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
  592. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.ko
  593. AUTOLOAD:=$(call AutoProbe,libipw)
  594. endef
  595. define KernelPackage/net-libipw/description
  596. Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
  597. endef
  598. IPW2100_NAME:=ipw2100-fw
  599. IPW2100_VERSION:=1.3
  600. define Download/net-ipw2100
  601. URL:=http://bughost.org/firmware/
  602. FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  603. MD5SUM=46aa75bcda1a00efa841f9707bbbd113
  604. endef
  605. $(eval $(call Download,net-ipw2100))
  606. define KernelPackage/net-ipw2100
  607. $(call KernelPackage/mac80211/Default)
  608. TITLE:=Intel IPW2100 driver
  609. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  610. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.ko
  611. AUTOLOAD:=$(call AutoProbe,ipw2100)
  612. endef
  613. define KernelPackage/net-ipw2100/description
  614. Kernel support for Intel IPW2100
  615. Includes:
  616. - ipw2100
  617. endef
  618. IPW2200_NAME:=ipw2200-fw
  619. IPW2200_VERSION:=3.1
  620. define Download/net-ipw2200
  621. URL:=http://bughost.org/firmware/
  622. FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  623. MD5SUM=eaba788643c7cc7483dd67ace70f6e99
  624. endef
  625. $(eval $(call Download,net-ipw2200))
  626. define KernelPackage/net-ipw2200
  627. $(call KernelPackage/mac80211/Default)
  628. TITLE:=Intel IPW2200 driver
  629. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  630. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.ko
  631. AUTOLOAD:=$(call AutoProbe,ipw2200)
  632. endef
  633. define KernelPackage/net-ipw2200/description
  634. Kernel support for Intel IPW2200
  635. Includes:
  636. - ipw2200
  637. endef
  638. define KernelPackage/net-hermes
  639. $(call KernelPackage/mac80211/Default)
  640. TITLE:=Hermes 802.11b chipset support
  641. DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
  642. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco.ko
  643. AUTOLOAD:=$(call AutoProbe,orinoco)
  644. endef
  645. define KernelPackage/net-hermes/description
  646. Kernel support for Hermes 802.11b chipsets
  647. endef
  648. define KernelPackage/net-hermes-pci
  649. $(call KernelPackage/mac80211/Default)
  650. TITLE:=Intersil Prism 2.5 PCI support
  651. DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
  652. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_pci.ko
  653. AUTOLOAD:=$(call AutoProbe,orinoco_pci)
  654. endef
  655. define KernelPackage/net-hermes-pci/description
  656. Kernel modules for Intersil Prism 2.5 PCI support
  657. endef
  658. define KernelPackage/net-hermes-plx
  659. $(call KernelPackage/mac80211/Default)
  660. TITLE:=PLX9052 based PCI adaptor
  661. DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
  662. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_plx.ko
  663. AUTOLOAD:=$(call AutoProbe,orinoco_plx)
  664. endef
  665. define KernelPackage/net-hermes-plx/description
  666. Kernel modules for Hermes in PLX9052 based PCI adaptors
  667. endef
  668. define KernelPackage/net-hermes-pcmcia
  669. $(call KernelPackage/mac80211/Default)
  670. TITLE:=Hermes based PCMCIA adaptors
  671. DEPENDS:=@PCMCIA_SUPPORT +kmod-net-hermes @BROKEN
  672. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_cs.ko
  673. AUTOLOAD:=$(call AutoProbe,orinoco_cs)
  674. endef
  675. define KernelPackage/net-hermes-pcmcia/description
  676. Kernel modules for Hermes based PCMCIA adaptors
  677. endef
  678. define KernelPackage/iwlagn
  679. $(call KernelPackage/mac80211/Default)
  680. DEPENDS:= +kmod-mac80211 @PCI_SUPPORT +@DRIVER_11N_SUPPORT
  681. TITLE:=Intel AGN Wireless support
  682. FILES:= \
  683. $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlwifi.ko \
  684. $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/dvm/iwldvm.ko
  685. AUTOLOAD:=$(call AutoProbe,iwlwifi iwldvm)
  686. MENU:=1
  687. endef
  688. define KernelPackage/iwlagn/description
  689. iwlagn kernel module for Intel 5000/5150/1000/6000/6050/6005/6030/100 support
  690. endef
  691. define KernelPackage/iwlagn/config
  692. if PACKAGE_kmod-iwlagn
  693. config IWL5000_FW
  694. bool "Intel 5000 Firmware"
  695. default y
  696. help
  697. Download and install firmware for:
  698. Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
  699. config IWL5150_FW
  700. bool "Intel 5150 Firmware"
  701. default y
  702. help
  703. Download and install firmware for:
  704. Intel Wireless WiFi 5150AGN
  705. config IWL1000_FW
  706. bool "Intel 1000 Firmware"
  707. default y
  708. help
  709. Download and install firmware for:
  710. Intel Centrino Wireless-N 1000
  711. config IWL6000_FW
  712. bool "Intel 6000 Firmware"
  713. default y
  714. help
  715. Download and install firmware for:
  716. Intel Centrino Ultimate-N 6300 and Advanced-N 6200
  717. config IWL6050_FW
  718. bool "Intel 6050 Firmware"
  719. default y
  720. help
  721. Download and install firmware for:
  722. Intel Centrino Advanced-N + WiMAX 6250 and Wireless-N + WiMAX 6150
  723. config IWL6005_FW
  724. bool "Intel 6005 Firmware"
  725. default y
  726. help
  727. Download and install firmware for:
  728. Intel Centrino Advanced-N 6205
  729. config IWL6030_FW
  730. bool "Intel 6030 Firmware"
  731. default y
  732. help
  733. Download and install firmware for:
  734. Intel Centrino Advanced-N 6230, Wireless-N 1030, Wireless-N 130 and Advanced-N 6235
  735. config IWL7260_FW
  736. bool "Intel 7260 Firmware"
  737. default y
  738. help
  739. Download and install firmware for:
  740. Intel Dual Band Wireless-N 7260 and Intel Dual Band Wireless-AC 7260
  741. config IWL7265_FW
  742. bool "Intel 7265 Firmware"
  743. default y
  744. help
  745. Download and install firmware for:
  746. Intel Wireless 7265
  747. config IWL100_FW
  748. bool "Intel 100 Firmware"
  749. default y
  750. help
  751. Download and install firmware for:
  752. Intel Centrino Wireless-N 100
  753. config IWL2000_FW
  754. bool "Intel 2000 Firmware"
  755. default y
  756. help
  757. Download and install firmware for:
  758. Intel Centrino Wireless-N 2200
  759. config IWL2030_FW
  760. bool "Intel 2030 Firmware"
  761. default y
  762. help
  763. Download and install firmware for:
  764. Intel Centrino Wireless-N 2230
  765. config IWL105_FW
  766. bool "Intel 105 Firmware"
  767. default y
  768. help
  769. Download and install firmware for:
  770. Intel Centrino Wireless-N 105
  771. config IWL135_FW
  772. bool "Intel 135 Firmware"
  773. default y
  774. help
  775. Download and install firmware for:
  776. Intel Centrino Wireless-N 135
  777. config IWL3160_FW
  778. bool "Intel 3160 Firmware"
  779. default y
  780. help
  781. Download and install firmware for:
  782. Intel Wireless 3160
  783. endif
  784. endef
  785. define KernelPackage/iwl-legacy
  786. $(call KernelPackage/mac80211/Default)
  787. DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
  788. TITLE:=Intel legacy Wireless support
  789. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwlegacy.ko
  790. AUTOLOAD:=$(call AutoProbe,iwlegacy)
  791. endef
  792. define KernelPackage/iwl-legacy/description
  793. iwl-legacy kernel module for legacy Intel wireless support
  794. endef
  795. define KernelPackage/iwl3945
  796. $(call KernelPackage/mac80211/Default)
  797. DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
  798. TITLE:=Intel iwl3945 Wireless support
  799. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.ko
  800. AUTOLOAD:=$(call AutoProbe,iwl3945)
  801. endef
  802. define KernelPackage/iwl3945/description
  803. iwl3945 kernel module for Intel 3945 support
  804. endef
  805. define KernelPackage/iwl4965
  806. $(call KernelPackage/mac80211/Default)
  807. DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT
  808. TITLE:=Intel iwl4965 Wireless support
  809. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.ko
  810. AUTOLOAD:=$(call AutoProbe,iwl4965)
  811. endef
  812. define KernelPackage/iwl4965/description
  813. iwl4965 kernel module for Intel 4965 support
  814. endef
  815. define KernelPackage/mwl8k
  816. $(call KernelPackage/mac80211/Default)
  817. TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
  818. URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
  819. DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
  820. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
  821. AUTOLOAD:=$(call AutoProbe,mwl8k)
  822. endef
  823. define KernelPackage/mwl8k/description
  824. Kernel modules for Marvell TOPDOG 802.11 Wireless cards
  825. endef
  826. define KernelPackage/mwifiex-pcie
  827. $(call KernelPackage/mac80211/Default)
  828. TITLE:=Driver for Marvell 802.11n/802.11ac PCIe Wireless cards
  829. URL:=http://wireless.kernel.org/en/users/Drivers/mwifiex
  830. DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
  831. FILES:= \
  832. $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex.ko \
  833. $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex_pcie.ko
  834. AUTOLOAD:=$(call AutoProbe,mwifiex_pcie)
  835. endef
  836. define KernelPackage/mwifiex-pcie/description
  837. Kernel modules for Marvell 802.11n/802.11ac PCIe Wireless cards
  838. endef
  839. define KernelPackage/wlcore
  840. $(call KernelPackage/mac80211/Default)
  841. TITLE:=TI common driver part
  842. DEPENDS+= @TARGET_omap +kmod-mac80211 +@DRIVER_11N_SUPPORT
  843. FILES:= \
  844. $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
  845. $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
  846. AUTOLOAD:=$(call AutoProbe,wlcore wlcore_sdio)
  847. endef
  848. define KernelPackage/wlcore/description
  849. This module contains some common parts needed by TI Wireless drivers.
  850. endef
  851. define KernelPackage/wl12xx
  852. $(call KernelPackage/mac80211/Default)
  853. TITLE:=Driver for TI WL12xx
  854. URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
  855. DEPENDS+= +kmod-wlcore
  856. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko
  857. AUTOLOAD:=$(call AutoProbe,wl12xx)
  858. endef
  859. define KernelPackage/wl12xx/description
  860. Kernel modules for TI WL12xx
  861. endef
  862. define KernelPackage/wl18xx
  863. $(call KernelPackage/mac80211/Default)
  864. TITLE:=Driver for TI WL18xx
  865. URL:=http://wireless.kernel.org/en/users/Drivers/wl18xx
  866. DEPENDS+= +kmod-wlcore
  867. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko
  868. AUTOLOAD:=$(call AutoProbe,wl18xx)
  869. endef
  870. define KernelPackage/wl18xx/description
  871. Kernel modules for TI WL18xx
  872. endef
  873. #Broadcom firmware
  874. ifneq ($(CONFIG_B43_FW_6_30),)
  875. PKG_B43_FWV4_NAME:=broadcom-wl
  876. PKG_B43_FWV4_VERSION:=6.30.163.46
  877. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).wl_apsta.o
  878. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  879. PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  880. PKG_B43_FWV4_MD5SUM:=6fe97e9368d25342a1ab943d3cf3496d
  881. else
  882. ifneq ($(CONFIG_B43_FW_5_10),)
  883. PKG_B43_FWV4_NAME:=broadcom-wl
  884. PKG_B43_FWV4_VERSION:=5.10.56.27.3
  885. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
  886. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
  887. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  888. PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
  889. else
  890. ifneq ($(CONFIG_B43_FW_4_178),)
  891. PKG_B43_FWV4_NAME:=broadcom-wl
  892. PKG_B43_FWV4_VERSION:=4.178.10.4
  893. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
  894. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  895. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  896. PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
  897. else
  898. ifneq ($(CONFIG_B43_FW_5_100_138),)
  899. PKG_B43_FWV4_NAME:=broadcom-wl
  900. PKG_B43_FWV4_VERSION:=5.100.138
  901. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
  902. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  903. PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  904. PKG_B43_FWV4_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
  905. else
  906. PKG_B43_FWV4_NAME:=broadcom-wl
  907. PKG_B43_FWV4_VERSION:=4.150.10.5
  908. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
  909. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  910. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  911. PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
  912. endif
  913. endif
  914. endif
  915. endif
  916. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  917. PKG_B43_FWV4_NAME:=broadcom-wl
  918. PKG_B43_FWV4_VERSION:=5.2
  919. PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
  920. PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
  921. PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
  922. PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
  923. endif
  924. PKG_B43_FWV3_NAME:=wl_apsta
  925. PKG_B43_FWV3_VERSION:=3.130.20.0
  926. PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
  927. PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
  928. PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
  929. define Download/b43
  930. FILE:=$(PKG_B43_FWV4_SOURCE)
  931. URL:=$(PKG_B43_FWV4_SOURCE_URL)
  932. MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
  933. endef
  934. $(eval $(call Download,b43))
  935. define Download/b43legacy
  936. FILE:=$(PKG_B43_FWV3_SOURCE)
  937. URL:=$(PKG_B43_FWV3_SOURCE_URL)
  938. MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
  939. endef
  940. $(eval $(call Download,b43legacy))
  941. define KernelPackage/b43
  942. $(call KernelPackage/mac80211/Default)
  943. TITLE:=Broadcom 43xx wireless support
  944. URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
  945. KCONFIG:= \
  946. CONFIG_HW_RANDOM=y
  947. # Depend on PCI_SUPPORT to make sure we can select kmod-bcma or kmod-ssb
  948. DEPENDS += \
  949. @PCI_SUPPORT +kmod-mac80211 \
  950. $(if $(CONFIG_PACKAGE_B43_USE_SSB),+kmod-ssb) \
  951. $(if $(CONFIG_PACKAGE_B43_USE_BCMA),+kmod-bcma)
  952. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
  953. AUTOLOAD:=$(call AutoProbe,b43)
  954. MENU:=1
  955. endef
  956. define KernelPackage/b43/config
  957. config PACKAGE_B43_USE_SSB
  958. select PACKAGE_kmod-ssb
  959. tristate
  960. depends on !TARGET_brcm47xx && !TARGET_brcm63xx
  961. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
  962. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_SSB
  963. config PACKAGE_B43_USE_BCMA
  964. select PACKAGE_kmod-bcma
  965. tristate
  966. depends on !TARGET_brcm47xx && !TARGET_bcm53xx
  967. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
  968. default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA
  969. if PACKAGE_kmod-b43
  970. choice
  971. prompt "b43 firmware version"
  972. default B43_FW_5_100_138
  973. help
  974. This option allows you to select the version of the b43 firmware.
  975. config B43_FW_4_150
  976. bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
  977. help
  978. Old stable firmware for BCM43xx devices.
  979. If unsure, select this.
  980. config B43_FW_4_178
  981. bool "Firmware 478.104 from driver 4.178.10.4"
  982. help
  983. Older firmware for BCM43xx devices.
  984. If unsure, select the "stable" firmware.
  985. config B43_FW_5_10
  986. bool "Firmware 508.1084 from driver 5.10.56.27"
  987. help
  988. Older firmware for BCM43xx devices.
  989. If unsure, select the "stable" firmware.
  990. config B43_FW_5_100_138
  991. bool "Firmware 666.2 from driver 5.100.138 (stable)"
  992. help
  993. The currently default firmware for BCM43xx devices.
  994. This firmware currently gets most of the testing and is needed for some N-PHY devices.
  995. If unsure, select the this firmware.
  996. config B43_FW_6_30
  997. bool "Firmware 784.2 from driver 6.30.163.46 (experimental)"
  998. help
  999. Newer experimental firmware for BCM43xx devices.
  1000. This firmware is mostly untested.
  1001. If unsure, select the "stable" firmware.
  1002. config B43_OPENFIRMWARE
  1003. bool "Open FirmWare for WiFi networks"
  1004. help
  1005. Opensource firmware for BCM43xx devices.
  1006. Do _not_ select this, unless you know what you are doing.
  1007. The Opensource firmware is not suitable for embedded devices, yet.
  1008. It does not support QoS, which is bad for AccessPoints.
  1009. It does not support hardware crypto acceleration, which is a showstopper
  1010. for embedded devices with low CPU resources.
  1011. If unsure, select the "stable" firmware.
  1012. endchoice
  1013. config B43_FW_SQUASH
  1014. bool "Remove unnecessary firmware files"
  1015. depends on !B43_OPENFIRMWARE
  1016. default y
  1017. help
  1018. This options allows you to remove unnecessary b43 firmware files
  1019. from the final rootfs image. This can reduce the rootfs size by
  1020. up to 200k.
  1021. If unsure, say Y.
  1022. config B43_FW_SQUASH_COREREVS
  1023. string "Core revisions to include"
  1024. depends on B43_FW_SQUASH
  1025. default "5,6,7,8,9,10,11,13,15" if TARGET_brcm47xx_legacy
  1026. default "16,28,29,30" if TARGET_brcm47xx_mips74k
  1027. default "5,6,7,8,9,10,11,13,15,16,28,29,30"
  1028. help
  1029. This is a comma seperated list of core revision numbers.
  1030. Example (keep files for rev5 only):
  1031. 5
  1032. Example (keep files for rev5 and rev11):
  1033. 5,11
  1034. config B43_FW_SQUASH_PHYTYPES
  1035. string "PHY types to include"
  1036. depends on B43_FW_SQUASH
  1037. default "G,N,LP" if TARGET_brcm47xx_legacy
  1038. default "N,HT" if TARGET_brcm47xx_mips74k
  1039. default "G,N,LP,HT"
  1040. help
  1041. This is a comma seperated list of PHY types:
  1042. A => A-PHY
  1043. AG => Dual A-PHY G-PHY
  1044. G => G-PHY
  1045. LP => LP-PHY
  1046. N => N-PHY
  1047. HT => HT-PHY
  1048. LCN => LCN-PHY
  1049. LCN40 => LCN40-PHY
  1050. AC => AC-PHY
  1051. Example (keep files for G-PHY only):
  1052. G
  1053. Example (keep files for G-PHY and N-PHY):
  1054. G,N
  1055. choice
  1056. prompt "Supported buses"
  1057. default PACKAGE_B43_BUSES_BCMA_AND_SSB
  1058. help
  1059. This allows choosing buses that b43 should support.
  1060. config PACKAGE_B43_BUSES_BCMA_AND_SSB
  1061. depends on !TARGET_brcm47xx_legacy && !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
  1062. bool "BCMA and SSB"
  1063. config PACKAGE_B43_BUSES_BCMA
  1064. depends on !TARGET_brcm47xx_legacy
  1065. bool "BCMA only"
  1066. config PACKAGE_B43_BUSES_SSB
  1067. depends on !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
  1068. bool "SSB only"
  1069. endchoice
  1070. config PACKAGE_B43_DEBUG
  1071. bool "Enable debug output and debugfs for b43"
  1072. default n
  1073. help
  1074. Enable additional debug output and runtime sanity checks for b43
  1075. and enables the debugfs interface.
  1076. If unsure, say N.
  1077. config PACKAGE_B43_PIO
  1078. bool "Enable support for PIO transfer mode"
  1079. default n
  1080. help
  1081. Enable support for using PIO instead of DMA. Unless you have DMA
  1082. transfer problems you don't need this.
  1083. If unsure, say N.
  1084. config PACKAGE_B43_PHY_G
  1085. bool "Enable support for G-PHYs"
  1086. default n if TARGET_brcm47xx_mips74k
  1087. default y
  1088. help
  1089. Enable support for G-PHY. This includes support for the following devices:
  1090. PCI: BCM4306, BCM4311, BCM4318
  1091. SoC: BCM5352E, BCM4712
  1092. If unsure, say Y.
  1093. config PACKAGE_B43_PHY_N
  1094. bool "Enable support for N-PHYs"
  1095. default y
  1096. help
  1097. Enable support for N-PHY. This includes support for the following devices:
  1098. PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
  1099. SoC: BCM4716, BCM4717, BCM4718
  1100. Currently only 11g speed is available.
  1101. If unsure, say Y.
  1102. config PACKAGE_B43_PHY_LP
  1103. bool "Enable support for LP-PHYs"
  1104. default n if TARGET_brcm47xx_mips74k
  1105. default y
  1106. help
  1107. Enable support for LP-PHY. This includes support for the following devices:
  1108. PCI: BCM4312
  1109. SoC: BCM5354
  1110. If unsure, say Y.
  1111. config PACKAGE_B43_PHY_HT
  1112. bool "Enable support for HT-PHYs"
  1113. default n if TARGET_brcm47xx_legacy
  1114. default y
  1115. help
  1116. Enable support for HT-PHY. This includes support for the following devices:
  1117. PCI: BCM4331
  1118. Currently only 11g speed is available.
  1119. If unsure, say Y.
  1120. config PACKAGE_B43_PHY_LCN
  1121. bool "Enable support for LCN-PHYs"
  1122. depends on BROKEN
  1123. default n
  1124. help
  1125. Currently broken.
  1126. If unsure, say N.
  1127. endif
  1128. endef
  1129. define KernelPackage/b43/description
  1130. Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
  1131. endef
  1132. define KernelPackage/b43legacy
  1133. $(call KernelPackage/mac80211/Default)
  1134. TITLE:=Broadcom 43xx-legacy wireless support
  1135. URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
  1136. KCONFIG:= \
  1137. CONFIG_HW_RANDOM=y
  1138. DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
  1139. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
  1140. AUTOLOAD:=$(call AutoProbe,b43legacy)
  1141. MENU:=1
  1142. endef
  1143. define KernelPackage/b43legacy/config
  1144. if PACKAGE_kmod-b43legacy
  1145. config B43LEGACY_FW_SQUASH
  1146. bool "Remove unnecessary firmware files"
  1147. default y
  1148. help
  1149. This options allows you to remove unnecessary b43legacy firmware files
  1150. from the final rootfs image. This can reduce the rootfs size by
  1151. up to 50k.
  1152. If unsure, say Y.
  1153. config B43LEGACY_FW_SQUASH_COREREVS
  1154. string "Core revisions to include"
  1155. depends on B43LEGACY_FW_SQUASH
  1156. default "1,2,3,4"
  1157. help
  1158. This is a comma seperated list of core revision numbers.
  1159. Example (keep files for rev4 only):
  1160. 4
  1161. Example (keep files for rev2 and rev4):
  1162. 2,4
  1163. endif
  1164. endef
  1165. define KernelPackage/b43legacy/description
  1166. Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
  1167. endef
  1168. define KernelPackage/brcmutil
  1169. $(call KernelPackage/mac80211/Default)
  1170. TITLE:=Broadcom IEEE802.11n common driver parts
  1171. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1172. DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
  1173. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
  1174. AUTOLOAD:=$(call AutoProbe,brcmutil)
  1175. MENU:=1
  1176. endef
  1177. define KernelPackage/brcmutil/description
  1178. This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
  1179. endef
  1180. define KernelPackage/brcmutil/config
  1181. if PACKAGE_kmod-brcmutil
  1182. config PACKAGE_BRCM80211_DEBUG
  1183. bool "Broadcom wireless driver debugging"
  1184. help
  1185. Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
  1186. endif
  1187. endef
  1188. PKG_BRCMSMAC_FW_NAME:=broadcom-wl
  1189. PKG_BRCMSMAC_FW_VERSION:=5.100.138
  1190. PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
  1191. PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
  1192. PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
  1193. PKG_BRCMSMAC_FW_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
  1194. define Download/brcmsmac
  1195. FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
  1196. URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
  1197. MD5SUM:=$(PKG_BRCMSMAC_FW_MD5SUM)
  1198. endef
  1199. $(eval $(call Download,brcmsmac))
  1200. define KernelPackage/brcmsmac
  1201. $(call KernelPackage/mac80211/Default)
  1202. TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
  1203. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1204. DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil
  1205. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
  1206. AUTOLOAD:=$(call AutoProbe,brcmsmac)
  1207. MENU:=1
  1208. endef
  1209. define KernelPackage/brcmsmac/description
  1210. Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
  1211. endef
  1212. define KernelPackage/brcmsmac/config
  1213. if PACKAGE_kmod-brcmsmac
  1214. config BRCMSMAC_USE_FW_FROM_WL
  1215. bool "Use firmware extracted from broadcom proprietary driver"
  1216. default y
  1217. help
  1218. Instead of using the official brcmsmac firmware a firmware
  1219. version 666.2 extracted from the proprietary Broadcom driver
  1220. is used. This is needed to get core rev 17 used in bcm4716
  1221. to work.
  1222. If unsure, say Y.
  1223. endif
  1224. endef
  1225. define KernelPackage/brcmfmac
  1226. $(call KernelPackage/mac80211/Default)
  1227. TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
  1228. URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
  1229. DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +@DRIVER_11N_SUPPORT +kmod-brcmutil +BRCMFMAC_SDIO:kmod-mmc +BRCMFMAC_USB:kmod-usb-core
  1230. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
  1231. AUTOLOAD:=$(call AutoProbe,brcmfmac)
  1232. endef
  1233. define KernelPackage/brcmfmac/description
  1234. Kernel module for Broadcom IEEE802.11n USB Wireless cards
  1235. endef
  1236. define KernelPackage/brcmfmac/config
  1237. if PACKAGE_kmod-brcmfmac
  1238. config BRCMFMAC_SDIO
  1239. bool "Enable SDIO bus interface support"
  1240. default n
  1241. help
  1242. Enable support for cards attached to an SDIO bus.
  1243. Select this option only if you are sure that your
  1244. board has a Broadcom wireless chip atacched to
  1245. that bus.
  1246. config BRCMFMAC_USB
  1247. bool "Enable USB bus interface support"
  1248. depends on USB_SUPPORT
  1249. default y
  1250. help
  1251. Supported USB connected chipsets:
  1252. BCM43235, BCM43236, BCM43238 (all in revision 3 only)
  1253. BCM43143, BCM43242, BCM43566, BCM43569
  1254. config BRCMFMAC_PCIE
  1255. bool "Enable PCIE bus interface support"
  1256. depends on PCI_SUPPORT
  1257. default y
  1258. help
  1259. Supported PCIe connected chipsets:
  1260. BCM4354, BCM4356, BCM43567, BCM43570, BCM43602
  1261. endif
  1262. endef
  1263. config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
  1264. config-y:= \
  1265. WLAN \
  1266. NL80211_TESTMODE \
  1267. CFG80211_WEXT \
  1268. CFG80211_INTERNAL_REGDB \
  1269. CFG80211_CERTIFICATION_ONUS \
  1270. MAC80211_RC_MINSTREL \
  1271. MAC80211_RC_MINSTREL_HT \
  1272. MAC80211_RC_MINSTREL_VHT \
  1273. MAC80211_RC_DEFAULT_MINSTREL \
  1274. config-$(call config_package,cfg80211) += CFG80211
  1275. config-$(call config_package,mac80211) += MAC80211
  1276. config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
  1277. ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
  1278. config-y += \
  1279. CFG80211_DEBUGFS \
  1280. MAC80211_DEBUGFS \
  1281. ATH9K_DEBUGFS \
  1282. ATH9K_HTC_DEBUGFS \
  1283. ATH10K_DEBUGFS \
  1284. CARL9170_DEBUGFS \
  1285. ATH5K_DEBUG
  1286. endif
  1287. config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
  1288. config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
  1289. config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG
  1290. config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
  1291. config-$(call config_package,ath9k) += ATH9K
  1292. config-$(call config_package,ath9k-common) += ATH9K_COMMON
  1293. config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
  1294. config-$(CONFIG_PCI) += ATH9K_PCI
  1295. config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
  1296. config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
  1297. config-$(call config_package,ath9k-htc) += ATH9K_HTC
  1298. config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
  1299. config-$(call config_package,ath5k) += ATH5K
  1300. ifdef CONFIG_TARGET_ath25
  1301. config-y += ATH5K_AHB
  1302. else
  1303. config-y += ATH5K_PCI
  1304. endif
  1305. config-$(call config_package,carl9170) += CARL9170
  1306. config-$(call config_package,b43) += B43
  1307. config-$(CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB) += B43_BUSES_BCMA_AND_SSB
  1308. config-$(CONFIG_PACKAGE_B43_BUSES_BCMA) += B43_BUSES_BCMA
  1309. config-$(CONFIG_PACKAGE_B43_BUSES_SSB) += B43_BUSES_SSB
  1310. config-$(CONFIG_PACKAGE_B43_PHY_G) += B43_PHY_G
  1311. config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
  1312. config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
  1313. config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
  1314. config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
  1315. config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
  1316. config-$(call config_package,b43legacy) += B43LEGACY
  1317. config-y += B43LEGACY_DMA_MODE
  1318. config-$(call config_package,brcmutil) += BRCMUTIL
  1319. config-$(call config_package,brcmsmac) += BRCMSMAC
  1320. config-$(call config_package,brcmfmac) += BRCMFMAC
  1321. config-$(CONFIG_BRCMFMAC_SDIO) += BRCMFMAC_SDIO
  1322. config-$(CONFIG_BRCMFMAC_USB) += BRCMFMAC_USB
  1323. config-$(CONFIG_BRCMFMAC_PCIE) += BRCMFMAC_PCIE
  1324. config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
  1325. config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
  1326. config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
  1327. config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI
  1328. config-$(call config_package,rt2x00-mmio) += RT2X00_LIB_MMIO
  1329. config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
  1330. config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
  1331. config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
  1332. config-$(call config_package,rt2400-pci) += RT2400PCI
  1333. config-$(call config_package,rt2500-pci) += RT2500PCI
  1334. config-$(call config_package,rt2500-usb) += RT2500USB
  1335. config-$(call config_package,rt61-pci) += RT61PCI
  1336. config-$(call config_package,rt73-usb) += RT73USB
  1337. config-$(call config_package,rt2800-lib) += RT2800_LIB
  1338. config-$(call config_package,rt2800-soc) += RT2800SOC
  1339. config-$(call config_package,rt2800-pci) += RT2800PCI
  1340. config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
  1341. config-$(call config_package,rt2800-usb) += RT2800USB
  1342. config-y += RT2800USB_RT33XX RT2800USB_RT35XX RT2800USB_RT3573 RT2800USB_RT53XX RT2800USB_RT55XX
  1343. config-$(call config_package,iwl-legacy) += IWLEGACY
  1344. config-$(call config_package,iwl3945) += IWL3945
  1345. config-$(call config_package,iwl4965) += IWL4965
  1346. config-$(call config_package,iwlagn) += IWLWIFI IWLDVM
  1347. config-$(call config_package,net-libipw) += LIBIPW
  1348. config-$(call config_package,net-ipw2100) += IPW2100
  1349. config-$(call config_package,net-ipw2200) += IPW2200
  1350. config-$(call config_package,p54-common) += P54_COMMON
  1351. config-$(call config_package,p54-pci) += P54_PCI
  1352. config-$(call config_package,p54-usb) += P54_USB
  1353. config-$(call config_package,p54-spi) += P54_SPI
  1354. config-$(call config_package,net-hermes) += HERMES
  1355. config-$(call config_package,net-hermes-pci) += PCI_HERMES
  1356. config-$(call config_package,net-hermes-plx) += PLX_HERMES
  1357. config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
  1358. config-y += HERMES_PRISM
  1359. config-$(call config_package,adm8211) += ADM8211
  1360. config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
  1361. config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
  1362. config-$(call config_package,mwl8k) += MWL8K
  1363. config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
  1364. config-$(call config_package,rtl8180) += RTL8180
  1365. config-$(call config_package,rtl8187) += RTL8187
  1366. config-$(call config_package,wlcore) += WLCORE WLCORE_SDIO
  1367. config-$(call config_package,wl12xx) += WL12XX
  1368. config-$(call config_package,wl18xx) += WL18XX
  1369. config-y += WL_TI WILINK_PLATFORM_DATA
  1370. config-$(call config_package,zd1211rw) += ZD1211RW
  1371. config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
  1372. config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
  1373. config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
  1374. config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
  1375. config-$(call config_package,rtl8192ce) += RTL8192CE
  1376. config-$(call config_package,rtl8192se) += RTL8192SE
  1377. config-$(call config_package,rtl8192de) += RTL8192DE
  1378. config-$(call config_package,rtl8192cu) += RTL8192CU
  1379. config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
  1380. config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
  1381. MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
  1382. CROSS_COMPILE="$(KERNEL_CROSS)" \
  1383. ARCH="$(LINUX_KARCH)" \
  1384. EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
  1385. KLIB_BUILD="$(LINUX_DIR)" \
  1386. MODPROBE=true \
  1387. KLIB=$(TARGET_MODULES_DIR) \
  1388. KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
  1389. KBUILD_LDFLAGS_MODULE_PREREQ=
  1390. ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
  1391. MAKE_OPTS += V=1
  1392. endif
  1393. define ConfigVars
  1394. $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
  1395. ))
  1396. endef
  1397. define mac80211_config
  1398. $(call ConfigVars,m)$(call ConfigVars,y)
  1399. endef
  1400. $(eval $(call shexport,mac80211_config))
  1401. define Build/Prepare
  1402. rm -rf $(PKG_BUILD_DIR)
  1403. mkdir -p $(PKG_BUILD_DIR)
  1404. $(PKG_UNPACK)
  1405. $(Build/Patch)
  1406. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  1407. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  1408. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
  1409. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
  1410. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
  1411. rm -rf \
  1412. $(PKG_BUILD_DIR)/include/linux/ssb \
  1413. $(PKG_BUILD_DIR)/include/linux/bcma \
  1414. $(PKG_BUILD_DIR)/include/net/bluetooth
  1415. rm -f \
  1416. $(PKG_BUILD_DIR)/include/linux/cordic.h \
  1417. $(PKG_BUILD_DIR)/include/linux/crc8.h \
  1418. $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
  1419. $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
  1420. $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
  1421. $(PKG_BUILD_DIR)/include/net/ieee80211.h
  1422. echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
  1423. $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
  1424. endef
  1425. ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
  1426. define Build/Compile/kmod
  1427. rm -rf $(PKG_BUILD_DIR)/modules
  1428. +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
  1429. endef
  1430. endif
  1431. define Build/Configure
  1432. cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
  1433. cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
  1434. cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
  1435. endef
  1436. define Build/Compile
  1437. $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
  1438. $(MAKE) $(MAKE_OPTS) allnoconfig
  1439. $(call Build/Compile/kmod)
  1440. endef
  1441. define Build/InstallDev
  1442. mkdir -p \
  1443. $(1)/usr/include/mac80211 \
  1444. $(1)/usr/include/mac80211-backport \
  1445. $(1)/usr/include/mac80211/ath \
  1446. $(1)/usr/include/net/mac80211
  1447. $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
  1448. $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
  1449. $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
  1450. $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
  1451. rm -f $(1)/usr/include/mac80211-backport/linux/module.h
  1452. endef
  1453. define KernelPackage/libertas-usb/install
  1454. $(INSTALL_DIR) $(1)/lib/firmware/libertas
  1455. $(INSTALL_DATA) \
  1456. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
  1457. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
  1458. $(1)/lib/firmware/libertas/
  1459. endef
  1460. define KernelPackage/libertas-sdio/install
  1461. $(INSTALL_DIR) $(1)/lib/firmware/libertas
  1462. $(INSTALL_DATA) \
  1463. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
  1464. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
  1465. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
  1466. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
  1467. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
  1468. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
  1469. $(1)/lib/firmware/libertas
  1470. endef
  1471. define KernelPackage/cfg80211/install
  1472. $(INSTALL_DIR) $(1)/lib/wifi $(1)/lib/netifd/wireless
  1473. $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
  1474. $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
  1475. endef
  1476. define KernelPackage/p54-pci/install
  1477. $(INSTALL_DIR) $(1)/lib/firmware
  1478. $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
  1479. endef
  1480. define KernelPackage/p54-usb/install
  1481. $(INSTALL_DIR) $(1)/lib/firmware
  1482. $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
  1483. endef
  1484. define KernelPackage/p54-spi/install
  1485. $(INSTALL_DIR) $(1)/lib/firmware
  1486. $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
  1487. endef
  1488. define KernelPackage/rt61-pci/install
  1489. $(INSTALL_DIR) $(1)/lib/firmware
  1490. $(INSTALL_DATA) \
  1491. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
  1492. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
  1493. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
  1494. $(1)/lib/firmware/
  1495. endef
  1496. define KernelPackage/rt73-usb/install
  1497. $(INSTALL_DIR) $(1)/lib/firmware
  1498. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
  1499. endef
  1500. define KernelPackage/rt2800-pci/install
  1501. $(INSTALL_DIR) $(1)/lib/firmware
  1502. $(INSTALL_DATA) \
  1503. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
  1504. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
  1505. $(1)/lib/firmware
  1506. endef
  1507. define KernelPackage/rt2800-usb/install
  1508. $(INSTALL_DIR) $(1)/lib/firmware
  1509. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
  1510. endef
  1511. define KernelPackage/wl12xx/install
  1512. $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
  1513. $(INSTALL_DATA) \
  1514. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
  1515. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
  1516. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
  1517. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
  1518. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-mr.bin \
  1519. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-plt.bin \
  1520. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-sr.bin \
  1521. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-nvs.bin \
  1522. $(1)/lib/firmware/ti-connectivity
  1523. endef
  1524. define KernelPackage/wl18xx/install
  1525. $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
  1526. $(INSTALL_DATA) \
  1527. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-conf.bin \
  1528. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-fw-3.bin \
  1529. $(1)/lib/firmware/ti-connectivity
  1530. endef
  1531. define KernelPackage/zd1211rw/install
  1532. $(INSTALL_DIR) $(1)/lib/firmware/zd1211
  1533. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
  1534. endef
  1535. define KernelPackage/carl9170/install
  1536. $(INSTALL_DIR) $(1)/lib/firmware
  1537. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/carl9170-1.fw $(1)/lib/firmware
  1538. endef
  1539. define KernelPackage/ath9k-htc/install
  1540. $(INSTALL_DIR) $(1)/lib/firmware
  1541. $(INSTALL_DATA) \
  1542. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
  1543. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
  1544. $(1)/lib/firmware/
  1545. endef
  1546. define KernelPackage/ath10k/install
  1547. $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
  1548. $(INSTALL_DATA) \
  1549. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
  1550. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
  1551. $(INSTALL_DATA) \
  1552. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/untested/firmware-5.bin_10.2.4.70-2 \
  1553. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
  1554. endef
  1555. define KernelPackage/mwl8k/install
  1556. $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
  1557. $(INSTALL_DATA) \
  1558. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
  1559. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
  1560. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
  1561. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
  1562. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
  1563. $(1)/lib/firmware/mwl8k/
  1564. endef
  1565. define KernelPackage/mwifiex-pcie/install
  1566. $(INSTALL_DIR) $(1)/lib/firmware/mrvl
  1567. $(INSTALL_DATA) \
  1568. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mrvl/pcie8897_uapsta.bin \
  1569. $(1)/lib/firmware/mrvl/
  1570. endef
  1571. define KernelPackage/net-ipw2100/install
  1572. $(INSTALL_DIR) $(1)/lib/firmware
  1573. $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
  1574. endef
  1575. define KernelPackage/net-ipw2200/install
  1576. $(INSTALL_DIR) $(1)/lib/firmware
  1577. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
  1578. endef
  1579. define KernelPackage/iwlagn/install
  1580. $(INSTALL_DIR) $(1)/lib/firmware
  1581. ifneq ($(CONFIG_IWL5000_FW),)
  1582. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
  1583. endif
  1584. ifneq ($(CONFIG_IWL5150_FW),)
  1585. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
  1586. endif
  1587. ifneq ($(CONFIG_IWL1000_FW),)
  1588. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
  1589. endif
  1590. ifneq ($(CONFIG_IWL6000_FW),)
  1591. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
  1592. endif
  1593. ifneq ($(CONFIG_IWL6050_FW),)
  1594. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
  1595. endif
  1596. ifneq ($(CONFIG_IWL6005_FW),)
  1597. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
  1598. endif
  1599. ifneq ($(CONFIG_IWL6030_FW),)
  1600. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
  1601. endif
  1602. ifneq ($(CONFIG_IWL7260_FW),)
  1603. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7260-9.ucode $(1)/lib/firmware
  1604. endif
  1605. ifneq ($(CONFIG_IWL7265_FW),)
  1606. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7265-9.ucode $(1)/lib/firmware
  1607. endif
  1608. ifneq ($(CONFIG_IWL100_FW),)
  1609. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
  1610. endif
  1611. ifneq ($(CONFIG_IWL2000_FW),)
  1612. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
  1613. endif
  1614. ifneq ($(CONFIG_IWL2030_FW),)
  1615. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
  1616. endif
  1617. ifneq ($(CONFIG_IWL105_FW),)
  1618. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
  1619. endif
  1620. ifneq ($(CONFIG_IWL135_FW),)
  1621. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
  1622. endif
  1623. ifneq ($(CONFIG_IWL3160_FW),)
  1624. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3160-9.ucode $(1)/lib/firmware
  1625. endif
  1626. endef
  1627. define KernelPackage/iwl3945/install
  1628. $(INSTALL_DIR) $(1)/lib/firmware
  1629. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
  1630. endef
  1631. define KernelPackage/iwl4965/install
  1632. $(INSTALL_DIR) $(1)/lib/firmware
  1633. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
  1634. endef
  1635. define KernelPackage/b43/install
  1636. rm -rf $(1)/lib/firmware/
  1637. ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
  1638. tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1639. else
  1640. tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1641. endif
  1642. $(INSTALL_DIR) $(1)/lib/firmware/
  1643. ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
  1644. $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
  1645. $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
  1646. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
  1647. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
  1648. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
  1649. else
  1650. b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
  1651. endif
  1652. ifneq ($(CONFIG_B43_FW_SQUASH),)
  1653. b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
  1654. endif
  1655. endef
  1656. define KernelPackage/b43legacy/install
  1657. $(INSTALL_DIR) $(1)/lib/firmware/
  1658. b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
  1659. ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
  1660. b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
  1661. endif
  1662. endef
  1663. define KernelPackage/brcmsmac/install
  1664. $(INSTALL_DIR) $(1)/lib/firmware/brcm
  1665. ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
  1666. tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
  1667. b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
  1668. else
  1669. $(INSTALL_DATA) \
  1670. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
  1671. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
  1672. $(1)/lib/firmware/brcm/
  1673. endif
  1674. endef
  1675. define KernelPackage/brcmfmac/install
  1676. $(INSTALL_DIR) $(1)/lib/firmware/brcm
  1677. ifneq ($(CONFIG_BRCMFMAC_USB),)
  1678. $(INSTALL_DATA) \
  1679. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
  1680. $(1)/lib/firmware/brcm/
  1681. $(INSTALL_DATA) \
  1682. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43143.bin \
  1683. $(1)/lib/firmware/brcm/
  1684. endif
  1685. ifneq ($(CONFIG_BRCMFMAC_PCIE),)
  1686. $(INSTALL_DATA) \
  1687. $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43602-pcie.ap.bin \
  1688. $(1)/lib/firmware/brcm/brcmfmac43602-pcie.bin
  1689. endif
  1690. endef
  1691. $(eval $(call KernelPackage,adm8211))
  1692. $(eval $(call KernelPackage,ath5k))
  1693. $(eval $(call KernelPackage,lib80211))
  1694. $(eval $(call KernelPackage,libertas-usb))
  1695. $(eval $(call KernelPackage,libertas-sdio))
  1696. $(eval $(call KernelPackage,cfg80211))
  1697. $(eval $(call KernelPackage,mac80211))
  1698. $(eval $(call KernelPackage,p54-common))
  1699. $(eval $(call KernelPackage,p54-pci))
  1700. $(eval $(call KernelPackage,p54-usb))
  1701. $(eval $(call KernelPackage,p54-spi))
  1702. $(eval $(call KernelPackage,rt2x00-lib))
  1703. $(eval $(call KernelPackage,rt2x00-mmio))
  1704. $(eval $(call KernelPackage,rt2x00-pci))
  1705. $(eval $(call KernelPackage,rt2x00-usb))
  1706. $(eval $(call KernelPackage,rt2800-lib))
  1707. $(eval $(call KernelPackage,rt2400-pci))
  1708. $(eval $(call KernelPackage,rt2500-pci))
  1709. $(eval $(call KernelPackage,rt2500-usb))
  1710. $(eval $(call KernelPackage,rt61-pci))
  1711. $(eval $(call KernelPackage,rt73-usb))
  1712. $(eval $(call KernelPackage,rt2800-mmio))
  1713. $(eval $(call KernelPackage,rt2800-soc))
  1714. $(eval $(call KernelPackage,rt2800-pci))
  1715. $(eval $(call KernelPackage,rt2800-usb))
  1716. $(eval $(call KernelPackage,rtl8180))
  1717. $(eval $(call KernelPackage,rtl8187))
  1718. $(eval $(call KernelPackage,rtlwifi))
  1719. $(eval $(call KernelPackage,rtlwifi-pci))
  1720. $(eval $(call KernelPackage,rtlwifi-usb))
  1721. $(eval $(call KernelPackage,rtl8192c-common))
  1722. $(eval $(call KernelPackage,rtl8192ce))
  1723. $(eval $(call KernelPackage,rtl8192se))
  1724. $(eval $(call KernelPackage,rtl8192de))
  1725. $(eval $(call KernelPackage,rtl8192cu))
  1726. $(eval $(call KernelPackage,zd1211rw))
  1727. $(eval $(call KernelPackage,mac80211-hwsim))
  1728. $(eval $(call KernelPackage,ath9k-common))
  1729. $(eval $(call KernelPackage,ath9k))
  1730. $(eval $(call KernelPackage,ath9k-htc))
  1731. $(eval $(call KernelPackage,ath10k))
  1732. $(eval $(call KernelPackage,ath))
  1733. $(eval $(call KernelPackage,carl9170))
  1734. $(eval $(call KernelPackage,b43))
  1735. $(eval $(call KernelPackage,b43legacy))
  1736. $(eval $(call KernelPackage,brcmutil))
  1737. $(eval $(call KernelPackage,brcmsmac))
  1738. $(eval $(call KernelPackage,brcmfmac))
  1739. $(eval $(call KernelPackage,net-libipw))
  1740. $(eval $(call KernelPackage,net-ipw2100))
  1741. $(eval $(call KernelPackage,net-ipw2200))
  1742. $(eval $(call KernelPackage,iwlagn))
  1743. $(eval $(call KernelPackage,iwl-legacy))
  1744. $(eval $(call KernelPackage,iwl4965))
  1745. $(eval $(call KernelPackage,iwl3945))
  1746. $(eval $(call KernelPackage,mwl8k))
  1747. $(eval $(call KernelPackage,mwifiex-pcie))
  1748. $(eval $(call KernelPackage,net-hermes))
  1749. $(eval $(call KernelPackage,net-hermes-pci))
  1750. $(eval $(call KernelPackage,net-hermes-plx))
  1751. $(eval $(call KernelPackage,net-hermes-pcmcia))
  1752. $(eval $(call KernelPackage,wlcore))
  1753. $(eval $(call KernelPackage,wl12xx))
  1754. $(eval $(call KernelPackage,wl18xx))