Makefile 64 KB

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