Makefile 60 KB

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