Makefile 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863
  1. #
  2. # Copyright (C) 2007-2010 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:=2010-03-03
  11. PKG_RELEASE:=3
  12. PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
  13. # http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \
  14. # http://wireless.kernel.org/download/compat-wireless-2.6
  15. PKG_MD5SUM:=af8da65ca4c25b1b69e3d2896d2bbb2f
  16. PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
  17. PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
  18. PKG_CONFIG_DEPENDS:= \
  19. CONFIG_PACKAGE_kmod-mac80211 \
  20. CONFIG_PACKAGE_MAC80211_DEBUGFS \
  21. CONFIG_PACKAGE_ATH9K_USE_MINSTREL \
  22. CONFIG_PACKAGE_ATH_DEBUG \
  23. CONFIG_ATH_USER_REGD \
  24. include $(INCLUDE_DIR)/package.mk
  25. WMENU:=Wireless Drivers
  26. define KernelPackage/mac80211/Default
  27. SUBMENU:=$(WMENU)
  28. URL:=http://linuxwireless.org/
  29. MAINTAINER:=Felix Fietkau <[email protected]>
  30. DEPENDS:=@LINUX_2_6 @(!(TARGET_avr32||TARGET_ep93xx||TARGET_ps3||TARGET_pxcab)||BROKEN)
  31. endef
  32. define KernelPackage/cfg80211
  33. $(call KernelPackage/mac80211/Default)
  34. TITLE:=cfg80211 - wireless configuration API
  35. DEPENDS+= +wireless-tools +iw @!LINUX_2_6_25
  36. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.33)),1)
  37. FILES:= \
  38. $(PKG_BUILD_DIR)/compat/compat.$(LINUX_KMOD_SUFFIX) \
  39. $(PKG_BUILD_DIR)/net/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
  40. AUTOLOAD:=$(call AutoLoad,20,compat cfg80211)
  41. else
  42. FILES:= \
  43. $(PKG_BUILD_DIR)/compat/compat.$(LINUX_KMOD_SUFFIX) \
  44. $(PKG_BUILD_DIR)/compat/compat_firmware_class.$(LINUX_KMOD_SUFFIX) \
  45. $(PKG_BUILD_DIR)/net/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
  46. AUTOLOAD:=$(call AutoLoad,20,compat compat_firmware_class cfg80211)
  47. endif
  48. endef
  49. define KernelPackage/cfg80211/description
  50. cfg80211 is the Linux wireless LAN (802.11) configuration API.
  51. endef
  52. define KernelPackage/mac80211
  53. $(call KernelPackage/mac80211/Default)
  54. TITLE:=Linux 802.11 Wireless Networking Stack
  55. DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211
  56. FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.$(LINUX_KMOD_SUFFIX)
  57. AUTOLOAD:=$(call AutoLoad,21,mac80211)
  58. endef
  59. define KernelPackage/mac80211/config
  60. source "$(SOURCE)/Config.in"
  61. endef
  62. define KernelPackage/mac80211/description
  63. Generic IEEE 802.11 Networking Stack (mac80211)
  64. endef
  65. # Prism54 drivers
  66. P54PCIFW:=2.13.12.0.arm
  67. P54USBFW:=2.13.24.0.lm87.arm
  68. define Download/p54usb
  69. FILE:=$(P54USBFW)
  70. URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
  71. MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
  72. endef
  73. $(eval $(call Download,p54usb))
  74. define Download/p54pci
  75. FILE:=$(P54PCIFW)
  76. URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
  77. MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
  78. endef
  79. $(eval $(call Download,p54pci))
  80. define KernelPackage/p54/Default
  81. $(call KernelPackage/mac80211/Default)
  82. TITLE:=Prism54 Drivers
  83. endef
  84. define KernelPackage/p54/description
  85. Kernel module for Prism54 chipsets (mac80211)
  86. endef
  87. define KernelPackage/p54-common
  88. $(call KernelPackage/p54/Default)
  89. DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT +kmod-mac80211
  90. TITLE+= (COMMON)
  91. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.$(LINUX_KMOD_SUFFIX)
  92. AUTOLOAD:=$(call AutoLoad,30,p54common)
  93. endef
  94. define KernelPackage/p54-pci
  95. $(call KernelPackage/p54/Default)
  96. TITLE+= (PCI)
  97. DEPENDS+= @PCI_SUPPORT +kmod-p54-common
  98. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.$(LINUX_KMOD_SUFFIX)
  99. AUTOLOAD:=$(call AutoLoad,31,p54pci)
  100. endef
  101. define KernelPackage/p54-usb
  102. $(call KernelPackage/p54/Default)
  103. TITLE+= (USB)
  104. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
  105. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.$(LINUX_KMOD_SUFFIX)
  106. AUTOLOAD:=$(call AutoLoad,31,p54usb)
  107. endef
  108. # Ralink rt2x00 drivers
  109. RT61FW:=RT61_Firmware_V1.2.zip
  110. RT71FW:=RT71W_Firmware_V1.8.zip
  111. RT2860FW:=RT2860_Firmware_V11.zip
  112. RT2870FW:=RT2870_Firmware_V8.zip
  113. define Download/rt61
  114. FILE:=$(RT61FW)
  115. URL:=http://www.ralinktech.com.tw/data/
  116. MD5SUM:=d4c690c93b470bc9a681297c2adc6281
  117. endef
  118. $(eval $(call Download,rt61))
  119. define Download/rt71w
  120. FILE:=$(RT71FW)
  121. URL:=http://www.ralinktech.com.tw/data/
  122. MD5SUM:=1e7a5dc574e0268574fcda3fd5cf52f7
  123. endef
  124. $(eval $(call Download,rt71w))
  125. define Download/rt2860
  126. FILE:=$(RT2860FW)
  127. URL:=http://www.ralinktech.com.tw/data/drivers
  128. MD5SUM:=440a81756a52c53528f16faa41c40124
  129. endef
  130. $(eval $(call Download,rt2860))
  131. define Download/rt2870
  132. FILE:=$(RT2870FW)
  133. URL:=http://www.ralinktech.com.tw/data/drivers
  134. MD5SUM:=a7aae1d8cfd68e4d86a73000df0b6584
  135. endef
  136. $(eval $(call Download,rt2870))
  137. AR9170FW:=ar9170.fw
  138. define Download/ar9170
  139. FILE:=$(AR9170FW)
  140. URL:=http://www.kernel.org/pub/linux/kernel/people/mcgrof/firmware/ar9170
  141. MD5SUM:=34feec4ec0eae3bb92c7c1ea2dfb4530
  142. endef
  143. $(eval $(call Download,ar9170))
  144. define KernelPackage/rt2x00/Default
  145. $(call KernelPackage/mac80211/Default)
  146. TITLE:=Ralink Drivers for RT2x00 cards
  147. endef
  148. define KernelPackage/rt2x00-lib
  149. $(call KernelPackage/rt2x00/Default)
  150. DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211 +kmod-crc-itu-t
  151. TITLE+= (LIB)
  152. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.$(LINUX_KMOD_SUFFIX)
  153. AUTOLOAD:=$(call AutoLoad,25,rt2x00lib)
  154. endef
  155. define KernelPackage/rt2x00-pci
  156. $(call KernelPackage/rt2x00/Default)
  157. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-lib +kmod-eeprom-93cx6
  158. TITLE+= (PCI)
  159. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.$(LINUX_KMOD_SUFFIX)
  160. AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
  161. endef
  162. define KernelPackage/rt2x00-usb
  163. $(call KernelPackage/rt2x00/Default)
  164. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
  165. TITLE+= (USB)
  166. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.$(LINUX_KMOD_SUFFIX)
  167. AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
  168. endef
  169. define KernelPackage/rt2800-lib
  170. $(call KernelPackage/rt2x00/Default)
  171. DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-rt2x00-lib +USB_SUPPORT:kmod-rt2x00-usb
  172. TITLE+= (rt2800 LIB)
  173. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.$(LINUX_KMOD_SUFFIX)
  174. AUTOLOAD:=$(call AutoLoad,27,rt2800lib)
  175. endef
  176. define KernelPackage/rt2400-pci
  177. $(call KernelPackage/rt2x00/Default)
  178. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  179. TITLE+= (RT2400 PCI)
  180. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.$(LINUX_KMOD_SUFFIX)
  181. AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
  182. endef
  183. define KernelPackage/rt2500-pci
  184. $(call KernelPackage/rt2x00/Default)
  185. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  186. TITLE+= (RT2500 PCI)
  187. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.$(LINUX_KMOD_SUFFIX)
  188. AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
  189. endef
  190. define KernelPackage/rt2500-usb
  191. $(call KernelPackage/rt2x00/Default)
  192. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
  193. TITLE+= (RT2500 USB)
  194. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.$(LINUX_KMOD_SUFFIX)
  195. AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
  196. endef
  197. define KernelPackage/rt61-pci
  198. $(call KernelPackage/rt2x00/Default)
  199. DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
  200. TITLE+= (RT2x61 PCI)
  201. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.$(LINUX_KMOD_SUFFIX)
  202. AUTOLOAD:=$(call AutoLoad,27,rt61pci)
  203. endef
  204. define KernelPackage/rt73-usb
  205. $(call KernelPackage/rt2x00/Default)
  206. DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
  207. TITLE+= (RT73 USB)
  208. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.$(LINUX_KMOD_SUFFIX)
  209. AUTOLOAD:=$(call AutoLoad,27,rt73usb)
  210. endef
  211. define KernelPackage/rt2800-pci
  212. $(call KernelPackage/rt2x00/Default)
  213. DEPENDS+= +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-crc-ccitt
  214. TITLE+= (RT2860 PCI)
  215. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.$(LINUX_KMOD_SUFFIX)
  216. AUTOLOAD:=$(call AutoLoad,28,rt2800pci)
  217. endef
  218. define KernelPackage/rt2800-usb
  219. $(call KernelPackage/rt2x00/Default)
  220. DEPENDS+= +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-crc-ccitt
  221. TITLE+= (RT2870 USB)
  222. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.$(LINUX_KMOD_SUFFIX)
  223. AUTOLOAD:=$(call AutoLoad,28,rt2800usb)
  224. endef
  225. define KernelPackage/rtl818x/Default
  226. $(call KernelPackage/mac80211/Default)
  227. TITLE:=Realtek Drivers for RTL818x devices
  228. URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
  229. DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
  230. endef
  231. define KernelPackage/rtl8180
  232. $(call KernelPackage/rtl818x/Default)
  233. DEPENDS+= @PCI_SUPPORT
  234. TITLE+= (RTL8180 PCI)
  235. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180.$(LINUX_KMOD_SUFFIX)
  236. AUTOLOAD:=$(call AutoLoad,27,rtl8180)
  237. endef
  238. define KernelPackage/rtl8187
  239. $(call KernelPackage/rtl818x/Default)
  240. DEPENDS+= @USB_SUPPORT
  241. TITLE+= (RTL8187 USB)
  242. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187.$(LINUX_KMOD_SUFFIX)
  243. AUTOLOAD:=$(call AutoLoad,27,rtl8187)
  244. endef
  245. ZD1211FW_NAME:=zd1211-firmware
  246. ZD1211FW_VERSION:=1.4
  247. define Download/zd1211rw
  248. FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
  249. URL:=@SF/zd1211/
  250. MD5SUM:=19f28781d76569af8551c9d11294c870
  251. endef
  252. $(eval $(call Download,zd1211rw))
  253. define KernelPackage/zd1211rw
  254. $(call KernelPackage/mac80211/Default)
  255. TITLE:=Zydas ZD1211 support
  256. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
  257. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.$(LINUX_KMOD_SUFFIX)
  258. AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
  259. endef
  260. define KernelPackage/ath/config
  261. config ATH_USER_REGD
  262. bool "Force Atheros drivers to respect the user's regdomain settings"
  263. depends on PACKAGE_kmod-ath
  264. help
  265. Atheros' idea of regulatory handling is that the EEPROM of the card defines
  266. the regulatory limits and the user is only allowed to restrict the settings
  267. even further, even if the country allows frequencies or power levels that
  268. are forbidden by the EEPROM settings.
  269. Select this option if you want the driver to respect the user's decision about
  270. regulatory settings.
  271. config PACKAGE_ATH_DEBUG
  272. bool "Atheros wireless debugging"
  273. depends on PACKAGE_kmod-ath
  274. help
  275. Say Y, if you want to debug atheros wireless drivers.
  276. Right now only ath9k makes use of this.
  277. endef
  278. define KernelPackage/ath
  279. $(call KernelPackage/mac80211/Default)
  280. TITLE:=Atheros common driver part
  281. DEPENDS+= @PCI_SUPPORT +kmod-mac80211
  282. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.$(LINUX_KMOD_SUFFIX)
  283. AUTOLOAD:=$(call AutoLoad,26,ath)
  284. endef
  285. define KernelPackage/ath/description
  286. This module contains some common parts needed by Atheros Wireless drivers.
  287. endef
  288. define KernelPackage/ath5k
  289. $(call KernelPackage/mac80211/Default)
  290. TITLE:=Atheros 5xxx wireless cards support
  291. URL:=http://linuxwireless.org/en/users/Drivers/ath5k
  292. DEPENDS+= +kmod-ath
  293. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.$(LINUX_KMOD_SUFFIX)
  294. AUTOLOAD:=$(call AutoLoad,27,ath5k)
  295. endef
  296. define KernelPackage/ath5k/description
  297. This module adds support for wireless adapters based on
  298. Atheros 5xxx chipset.
  299. endef
  300. define KernelPackage/ath9k
  301. $(call KernelPackage/mac80211/Default)
  302. TITLE:=Atheros 802.11n wireless cards support
  303. URL:=http://linuxwireless.org/en/users/Drivers/ath9k
  304. DEPENDS+= +kmod-ath
  305. FILES:= \
  306. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.$(LINUX_KMOD_SUFFIX) \
  307. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.$(LINUX_KMOD_SUFFIX) \
  308. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.$(LINUX_KMOD_SUFFIX)
  309. AUTOLOAD:=$(call AutoLoad,27,ath9k_hw ath9k_common ath9k)
  310. endef
  311. define KernelPackage/ath9k/description
  312. This module adds support for wireless adapters based on
  313. Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
  314. endef
  315. define KernelPackage/ath9k/config
  316. source "$(SOURCE)/Config.in.ath9k"
  317. endef
  318. USB8388FW_NAME:=usb8388
  319. USB8388FW_VERSION:=5.110.22.p23
  320. define Download/usb8388
  321. URL:=http://dev.laptop.org/pub/firmware/libertas/
  322. FILE:=$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin
  323. MD5SUM=5e38f55719df3d0c58dd3bd02575a09c
  324. endef
  325. $(eval $(call Download,usb8388))
  326. define KernelPackage/libertas
  327. $(call KernelPackage/mac80211/Default)
  328. DEPENDS+= @USB_SUPPORT +kmod-mac80211 +kmod-usb-core +kmod-lib80211
  329. TITLE:=Marvell 88W8015 Wireless Driver
  330. FILES:= \
  331. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.$(LINUX_KMOD_SUFFIX) \
  332. $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.$(LINUX_KMOD_SUFFIX)
  333. AUTOLOAD:=$(call AutoLoad,27,libertas usb8xxx)
  334. endef
  335. define KernelPackage/ar9170
  336. $(call KernelPackage/mac80211/Default)
  337. TITLE:=Atheros AR9170 802.11n USB support
  338. URL:=http://wireless.kernel.org/en/users/Drivers/ar9170
  339. DEPENDS+= @USB_SUPPORT @!LINUX_2_6_25 +kmod-ath +kmod-usb-core
  340. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar9170/ar9170usb.$(LINUX_KMOD_SUFFIX)
  341. AUTOLOAD:=$(call AutoLoad,27,ar9170usb)
  342. endef
  343. define KernelPackage/ar9170/description
  344. This is a driver for the Atheros "otus" 802.11n USB devices.
  345. endef
  346. define KernelPackage/mac80211-hwsim
  347. $(call KernelPackage/mac80211/Default)
  348. TITLE:=mac80211 HW simulation device
  349. DEPENDS+= +kmod-mac80211
  350. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.$(LINUX_KMOD_SUFFIX)
  351. AUTOLOAD:=$(call AutoLoad,60,mac80211_hwsim)
  352. endef
  353. define KernelPackage/net-libipw
  354. $(call KernelPackage/mac80211/Default)
  355. TITLE:=libipw for ipw2100 and ipw2200
  356. DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211
  357. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.$(LINUX_KMOD_SUFFIX)
  358. AUTOLOAD:=$(call AutoLoad,49,libipw)
  359. endef
  360. define KernelPackage/net-libipw/description
  361. Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
  362. endef
  363. IPW2100_NAME:=ipw2100-fw
  364. IPW2100_VERSION:=1.3
  365. define Download/net-ipw2100
  366. URL:=http://bughost.org/firmware/
  367. FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  368. MD5SUM=46aa75bcda1a00efa841f9707bbbd113
  369. endef
  370. $(eval $(call Download,net-ipw2100))
  371. define KernelPackage/net-ipw2100
  372. $(call KernelPackage/mac80211/Default)
  373. TITLE:=Intel IPW2100 driver
  374. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  375. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.$(LINUX_KMOD_SUFFIX)
  376. AUTOLOAD:=$(call AutoLoad,50,ipw2100)
  377. endef
  378. define KernelPackage/net-ipw2100/description
  379. Kernel support for Intel IPW2100
  380. Includes:
  381. - ipw2100
  382. endef
  383. IPW2200_NAME:=ipw2200-fw
  384. IPW2200_VERSION:=3.1
  385. define Download/net-ipw2200
  386. URL:=http://bughost.org/firmware/
  387. FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  388. MD5SUM=eaba788643c7cc7483dd67ace70f6e99
  389. endef
  390. $(eval $(call Download,net-ipw2200))
  391. define KernelPackage/net-ipw2200
  392. $(call KernelPackage/mac80211/Default)
  393. TITLE:=Intel IPW2200 driver
  394. DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
  395. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.$(LINUX_KMOD_SUFFIX)
  396. AUTOLOAD:=$(call AutoLoad,50,ipw2200)
  397. endef
  398. define KernelPackage/net-ipw2200/description
  399. Kernel support for Intel IPW2200
  400. Includes:
  401. - ipw2200
  402. endef
  403. #Broadcom firmware
  404. ifneq ($(CONFIG_B43_EXPERIMENTAL),)
  405. PKG_B43_FWV4_NAME:=broadcom-wl
  406. PKG_B43_FWV4_VERSION:=4.178.10.4
  407. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl.o
  408. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  409. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  410. PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
  411. else
  412. PKG_B43_FWV4_NAME:=broadcom-wl
  413. PKG_B43_FWV4_VERSION:=4.150.10.5
  414. PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
  415. PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
  416. PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
  417. PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
  418. endif
  419. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  420. PKG_B43_FWV4_NAME:=broadcom-wl
  421. PKG_B43_FWV4_VERSION:=5.2
  422. PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
  423. PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
  424. PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
  425. PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
  426. endif
  427. PKG_B43_FWV3_NAME:=wl_apsta
  428. PKG_B43_FWV3_VERSION:=3.130.20.0
  429. PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
  430. PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
  431. PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
  432. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  433. PKG_B43_FWCUTTER_NAME:=b43-fwcutter
  434. PKG_B43_FWCUTTER_VERSION:=3e69531aa65b8f664a0ab00dfc3e2eefeb0cb417
  435. PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
  436. PKG_B43_FWCUTTER_PROTO:=git
  437. PKG_B43_FWCUTTER_SOURCE_URL:=http://git.bu3sch.de/git/b43-tools.git
  438. PKG_B43_FWCUTTER_SUBDIR:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)
  439. PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/fwcutter/
  440. else
  441. PKG_B43_FWCUTTER_NAME:=b43-fwcutter
  442. PKG_B43_FWCUTTER_VERSION:=012
  443. PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
  444. PKG_B43_FWCUTTER_PROTO:=default
  445. PKG_B43_FWCUTTER_SOURCE_URL:=http://bu3sch.de/b43/fwcutter/
  446. PKG_B43_FWCUTTER_MD5SUM:=69eadf67b459f313a8d6b37aaabef96c
  447. PKG_B43_FWCUTTER_SUBDIR:=b43-fwcutter-$(PKG_B43_FWCUTTER_VERSION)
  448. PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/
  449. endif
  450. define Download/b43-common
  451. FILE:=$(PKG_B43_FWCUTTER_SOURCE)
  452. URL:=$(PKG_B43_FWCUTTER_SOURCE_URL)
  453. MD5SUM:=$(PKG_B43_FWCUTTER_MD5SUM)
  454. PROTO:=$(PKG_B43_FWCUTTER_PROTO)
  455. VERSION:=$(PKG_B43_FWCUTTER_VERSION)
  456. SUBDIR:=$(PKG_B43_FWCUTTER_SUBDIR)
  457. endef
  458. $(eval $(call Download,b43-common))
  459. define Download/b43
  460. FILE:=$(PKG_B43_FWV4_SOURCE)
  461. URL:=$(PKG_B43_FWV4_SOURCE_URL)
  462. MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
  463. endef
  464. $(eval $(call Download,b43))
  465. define Download/b43legacy
  466. FILE:=$(PKG_B43_FWV3_SOURCE)
  467. URL:=$(PKG_B43_FWV3_SOURCE_URL)
  468. MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
  469. endef
  470. $(eval $(call Download,b43legacy))
  471. define KernelPackage/b43-common
  472. $(call KernelPackage/mac80211/Default)
  473. TITLE:=Generic stuff for Broadcom wireless devices
  474. URL:=http://linuxwireless.org/en/users/Drivers/b43
  475. KCONFIG:= \
  476. CONFIG_HW_RANDOM=y
  477. DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
  478. endef
  479. define KernelPackage/b43
  480. $(call KernelPackage/b43-common)
  481. TITLE:=Broadcom 43xx wireless support
  482. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.$(LINUX_KMOD_SUFFIX)
  483. AUTOLOAD:=$(call AutoLoad,30,b43)
  484. endef
  485. define KernelPackage/b43/config
  486. source "$(SOURCE)/Config.in.b43"
  487. endef
  488. define KernelPackage/b43/description
  489. Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
  490. endef
  491. define KernelPackage/b43legacy
  492. $(call KernelPackage/b43-common)
  493. TITLE:=Broadcom 43xx-legacy wireless support
  494. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.$(LINUX_KMOD_SUFFIX)
  495. AUTOLOAD:=$(call AutoLoad,30,b43legacy)
  496. endef
  497. define KernelPackage/b43legacy/config
  498. source "$(SOURCE)/Config.in.b43legacy"
  499. endef
  500. define KernelPackage/b43legacy/description
  501. Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
  502. endef
  503. BUILDFLAGS:= \
  504. -I$(PKG_BUILD_DIR)/include \
  505. $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
  506. $(if $(CONFIG_PCI),-DCONFIG_B43_PCI_AUTOSELECT -DCONFIG_B43_PCICORE_AUTOSELECT -DCONFIG_SSB_DRIVER_PCICORE_POSSIBLE -DCONFIG_SSB_DRIVER_PCICORE) \
  507. $(if $(CONFIG_PCI),-DCONFIG_SSB_PCIHOST_POSSIBLE -DCONFIG_SSB_PCIHOST) \
  508. $(if $(CONFIG_PCI),-DCONFIG_SSB_SPROM) \
  509. $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS -DCONFIG_AR9170_LEDS) \
  510. -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
  511. $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),-DCONFIG_MAC80211_DEBUGFS -DCONFIG_ATH9K_DEBUGFS) \
  512. $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG) \
  513. -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
  514. $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1) \
  515. $(if $(CONFIG_PACKAGE_ATH9K_USE_MINSTREL),-DATH9K_USE_MINSTREL)
  516. MAKE_OPTS:= \
  517. CROSS_COMPILE="$(KERNEL_CROSS)" \
  518. ARCH="$(LINUX_KARCH)" \
  519. EXTRA_CFLAGS="$(BUILDFLAGS)" \
  520. $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
  521. CONFIG_MAC80211=$(if $(CONFIG_PACKAGE_kmod-mac80211),m) \
  522. CONFIG_MAC80211_RC_PID=y \
  523. CONFIG_MAC80211_RC_MINSTREL=y \
  524. CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
  525. CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
  526. CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
  527. CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
  528. CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
  529. CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=$(if $(CONFIG_PCI),y) \
  530. CONFIG_SSB_DRIVER_PCICORE=$(if $(CONFIG_PCI),y) \
  531. CONFIG_SSB_PCIHOST_POSSIBLE=$(if $(CONFIG_PCI),y) \
  532. CONFIG_SSB_PCIHOST=$(if $(CONFIG_PCI),y) \
  533. CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
  534. CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
  535. CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
  536. CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
  537. CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
  538. CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
  539. CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
  540. CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
  541. CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
  542. CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
  543. CONFIG_ATH9K_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
  544. CONFIG_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
  545. CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
  546. CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
  547. CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
  548. CONFIG_P54_SPI= \
  549. CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
  550. CONFIG_RT2X00_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
  551. CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
  552. CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
  553. CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
  554. CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
  555. CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
  556. CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
  557. CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
  558. CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
  559. CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
  560. CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
  561. CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
  562. CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
  563. CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
  564. CONFIG_PCMCIA= \
  565. CONFIG_LIBIPW=$(if $(CONFIG_PACKAGE_kmod-net-libipw),m) \
  566. CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
  567. CONFIG_LIBERTAS_CS= \
  568. CONFIG_LIBERTAS_SDIO= \
  569. CONFIG_LIBERTAS_THINFIRM= \
  570. CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
  571. CONFIG_IPW2100=$(if $(CONFIG_PACKAGE_kmod-net-ipw2100),m) \
  572. CONFIG_IPW2200=$(if $(CONFIG_PACKAGE_kmod-net-ipw2200),m) \
  573. CONFIG_NL80211=y \
  574. CONFIG_LIB80211= \
  575. CONFIG_LIB80211_CRYPT_WEP= \
  576. CONFIG_LIB80211_CRYPT_CCMP= \
  577. CONFIG_LIB80211_CRYPT_TKIP= \
  578. CONFIG_IWLWIFI= \
  579. CONFIG_IWLAGN= \
  580. CONFIG_MWL8K= \
  581. CONFIG_ATMEL= \
  582. CONFIG_PCMCIA_ATMEL= \
  583. CONFIG_ADM8211= \
  584. CONFIG_USB_NET_RNDIS_HOST= \
  585. CONFIG_USB_NET_RNDIS_WLAN= \
  586. CONFIG_USB_NET_CDCETHER= \
  587. CONFIG_USB_USBNET= \
  588. CONFIG_AT76C50X_USB= \
  589. CONFIG_WL12XX= \
  590. CONFIG_EEPROM_93CX6= \
  591. CONFIG_AR9170_USB=$(if $(CONFIG_PACKAGE_kmod-ar9170),m) \
  592. CONFIG_AR9170_LEDS=$(CONFIG_LEDS_TRIGGERS) \
  593. CONFIG_IWM= \
  594. MADWIFI= \
  595. OLD_IWL= \
  596. KLIB_BUILD="$(LINUX_DIR)" \
  597. MODPROBE=: \
  598. KLIB=$(TARGET_MODULES_DIR) \
  599. KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER)))
  600. define Build/Prepare
  601. rm -rf $(PKG_BUILD_DIR)
  602. mkdir -p $(PKG_BUILD_DIR)
  603. $(PKG_UNPACK)
  604. $(Build/Patch)
  605. unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT61FW)
  606. unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT71FW)
  607. -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2860FW)
  608. -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2870FW)
  609. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
  610. $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
  611. $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
  612. rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
  613. rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
  614. rm $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h
  615. endef
  616. ifneq ($(CONFIG_PACKAGE_kmod-cfg80211),)
  617. define Build/Compile/kmod
  618. rm -rf $(PKG_BUILD_DIR)/modules
  619. $(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
  620. endef
  621. endif
  622. define Build/Compile
  623. $(call Build/Compile/kmod)
  624. endef
  625. define Build/InstallDev
  626. mkdir -p \
  627. $(1)/usr/include/mac80211 \
  628. $(1)/usr/include/mac80211/ath \
  629. $(1)/usr/include/net/mac80211
  630. $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
  631. $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
  632. $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
  633. endef
  634. define KernelPackage/libertas/install
  635. $(INSTALL_DIR) $(1)/lib/firmware
  636. $(INSTALL_DATA) $(DL_DIR)/$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin $(1)/lib/firmware/$(USB8388FW_NAME).bin
  637. endef
  638. define KernelPackage/cfg80211/install
  639. $(INSTALL_DIR) $(1)/lib/wifi
  640. $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
  641. endef
  642. define KernelPackage/p54-pci/install
  643. $(INSTALL_DIR) $(1)/lib/firmware
  644. $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
  645. endef
  646. define KernelPackage/p54-usb/install
  647. $(INSTALL_DIR) $(1)/lib/firmware
  648. $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
  649. endef
  650. define KernelPackage/rt61-pci/install
  651. $(INSTALL_DIR) $(1)/lib/firmware
  652. $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware/
  653. endef
  654. define KernelPackage/rt73-usb/install
  655. $(INSTALL_DIR) $(1)/lib/firmware
  656. $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware/
  657. endef
  658. define KernelPackage/rt2800-pci/install
  659. $(INSTALL_DIR) $(1)/lib/firmware
  660. $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2860.bin $(1)/lib/firmware/
  661. endef
  662. define KernelPackage/rt2800-usb/install
  663. $(INSTALL_DIR) $(1)/lib/firmware
  664. $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2870.bin $(1)/lib/firmware/
  665. endef
  666. define KernelPackage/zd1211rw/install
  667. $(INSTALL_DIR) $(1)/lib/firmware/zd1211
  668. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
  669. endef
  670. define KernelPackage/ar9170/install
  671. $(INSTALL_DIR) $(1)/lib/firmware
  672. $(INSTALL_DATA) $(DL_DIR)/$(AR9170FW) $(1)/lib/firmware/
  673. endef
  674. define KernelPackage/net-ipw2100/install
  675. $(INSTALL_DIR) $(1)/lib/firmware
  676. $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
  677. endef
  678. define KernelPackage/net-ipw2200/install
  679. $(INSTALL_DIR) $(1)/lib/firmware
  680. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
  681. endef
  682. define Build/b43-common
  683. tar xjf "$(DL_DIR)/$(PKG_B43_FWCUTTER_SOURCE)" -C "$(PKG_BUILD_DIR)"
  684. $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)" \
  685. CFLAGS="-I$(STAGING_DIR_HOST)/include -include endian.h"
  686. $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
  687. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  688. $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
  689. $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
  690. $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
  691. $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
  692. endif
  693. $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
  694. endef
  695. define KernelPackage/b43/install
  696. rm -rf $(1)/lib/firmware/
  697. $(call Build/b43-common)
  698. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  699. tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  700. else
  701. tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
  702. endif
  703. $(INSTALL_DIR) $(1)/lib/firmware/
  704. ifneq ($(CONFIG_B43_OPENFIRMWARE),)
  705. $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
  706. $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
  707. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
  708. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
  709. $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
  710. else
  711. b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
  712. endif
  713. ifneq ($(CONFIG_B43_FW_SQUASH),)
  714. b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
  715. endif
  716. endef
  717. define KernelPackage/b43legacy/install
  718. $(call Build/b43-common)
  719. $(INSTALL_DIR) $(1)/lib/firmware/
  720. b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
  721. ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
  722. b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
  723. endif
  724. endef
  725. $(eval $(call KernelPackage,ath5k))
  726. $(eval $(call KernelPackage,libertas))
  727. $(eval $(call KernelPackage,cfg80211))
  728. $(eval $(call KernelPackage,mac80211))
  729. $(eval $(call KernelPackage,p54-common))
  730. $(eval $(call KernelPackage,p54-pci))
  731. $(eval $(call KernelPackage,p54-usb))
  732. $(eval $(call KernelPackage,rt2x00-lib))
  733. $(eval $(call KernelPackage,rt2x00-pci))
  734. $(eval $(call KernelPackage,rt2x00-usb))
  735. $(eval $(call KernelPackage,rt2800-lib))
  736. $(eval $(call KernelPackage,rt2400-pci))
  737. $(eval $(call KernelPackage,rt2500-pci))
  738. $(eval $(call KernelPackage,rt2500-usb))
  739. $(eval $(call KernelPackage,rt61-pci))
  740. $(eval $(call KernelPackage,rt73-usb))
  741. $(eval $(call KernelPackage,rt2800-pci))
  742. $(eval $(call KernelPackage,rt2800-usb))
  743. $(eval $(call KernelPackage,rtl8180))
  744. $(eval $(call KernelPackage,rtl8187))
  745. $(eval $(call KernelPackage,zd1211rw))
  746. $(eval $(call KernelPackage,mac80211-hwsim))
  747. $(eval $(call KernelPackage,ath9k))
  748. $(eval $(call KernelPackage,ath))
  749. $(eval $(call KernelPackage,ar9170))
  750. $(eval $(call KernelPackage,b43))
  751. $(eval $(call KernelPackage,b43legacy))
  752. $(eval $(call KernelPackage,net-libipw))
  753. $(eval $(call KernelPackage,net-ipw2100))
  754. $(eval $(call KernelPackage,net-ipw2200))