Makefile 65 KB

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