wireless.mk 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. #
  2. # Copyright (C) 2006-2008 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. WIRELESS_MENU:=Wireless Drivers
  8. # NOTE: dependency on 2.6 was removed since it was inherited by kmod-hostap
  9. # and prevented it from even showing up in menuconfig on 2.4
  10. define KernelPackage/ieee80211
  11. SUBMENU:=$(WIRELESS_MENU)
  12. TITLE:=802.11 Networking stack
  13. DEPENDS:=+kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic @LINUX_2_4||@LINUX_2_6_21||LINUX_2_6_23||LINUX_2_6_24||LINUX_2_6_25||LINUX_2_6_26||LINUX_2_6_27||LINUX_2_6_28
  14. KCONFIG:= \
  15. CONFIG_IEEE80211 \
  16. CONFIG_IEEE80211_CRYPT_WEP \
  17. CONFIG_IEEE80211_CRYPT_CCMP \
  18. CONFIG_IEEE80211_CRYPT_TKIP
  19. FILES:= \
  20. $(LINUX_DIR)/net/ieee80211/ieee80211_crypt.$(LINUX_KMOD_SUFFIX) \
  21. $(LINUX_DIR)/net/ieee80211/ieee80211.$(LINUX_KMOD_SUFFIX) \
  22. $(LINUX_DIR)/net/ieee80211/ieee80211_crypt_wep.$(LINUX_KMOD_SUFFIX) \
  23. $(LINUX_DIR)/net/ieee80211/ieee80211_crypt_tkip.$(LINUX_KMOD_SUFFIX) \
  24. $(LINUX_DIR)/net/ieee80211/ieee80211_crypt_ccmp.$(LINUX_KMOD_SUFFIX)
  25. AUTOLOAD:=$(call AutoLoad,10, \
  26. ieee80211_crypt \
  27. ieee80211 \
  28. ieee80211_crypt_wep \
  29. ieee80211_crypt_tkip \
  30. ieee80211_crypt_ccmp \
  31. )
  32. endef
  33. define KernelPackage/ieee80211/description
  34. Kernel modules for 802.11 Networking stack
  35. Includes:
  36. - ieee80211_crypt
  37. - ieee80211
  38. - ieee80211_crypt_wep
  39. - ieee80211_crypt_tkip
  40. - ieee80211_crytp_ccmp
  41. endef
  42. $(eval $(call KernelPackage,ieee80211))
  43. define KernelPackage/lib80211
  44. SUBMENU:=$(WIRELESS_MENU)
  45. TITLE:=802.11 Networking stack
  46. DEPENDS:=@LINUX_2_6_29||LINUX_2_6_30
  47. KCONFIG:= \
  48. CONFIG_LIB80211 \
  49. CONFIG_LIB80211_CRYPT_WEP \
  50. CONFIG_LIB80211_CRYPT_TKIP \
  51. CONFIG_LIB80211_CRYPT_CCMP
  52. FILES:= \
  53. $(LINUX_DIR)/net/wireless/lib80211.$(LINUX_KMOD_SUFFIX) \
  54. $(LINUX_DIR)/net/wireless/lib80211_crypt_wep.$(LINUX_KMOD_SUFFIX) \
  55. $(LINUX_DIR)/net/wireless/lib80211_crypt_ccmp.$(LINUX_KMOD_SUFFIX) \
  56. $(LINUX_DIR)/net/wireless/lib80211_crypt_tkip.$(LINUX_KMOD_SUFFIX)
  57. AUTOLOAD:=$(call AutoLoad,10, \
  58. lib80211 \
  59. lib80211_crypt_wep \
  60. lib80211_crypt_ccmp \
  61. lib80211_crypt_tkip \
  62. )
  63. endef
  64. define KernelPackage/lib80211/description
  65. Kernel modules for 802.11 Networking stack
  66. Includes:
  67. - lib80211
  68. - lib80211_crypt_wep
  69. - lib80211_crypt_tkip
  70. - lib80211_crytp_ccmp
  71. endef
  72. $(eval $(call KernelPackage,lib80211))
  73. define KernelPackage/ieee80211-softmac
  74. SUBMENU:=$(WIRELESS_MENU)
  75. TITLE:=ieee80211 SoftMAC support
  76. DEPENDS:=+kmod-ieee80211 @LINUX_2_6_21||@LINUX_2_6_23||@LINUX_2_6_24||@LINUX_2_6_25
  77. KCONFIG:=CONFIG_IEEE80211_SOFTMAC
  78. FILES:=$(LINUX_DIR)/net/ieee80211/softmac/ieee80211softmac.$(LINUX_KMOD_SUFFIX)
  79. AUTOLOAD:=$(call AutoLoad,20,ieee80211softmac)
  80. endef
  81. define KernelPackage/ieee80211-softmac/description
  82. Kernel modules for 802.11 SoftMAC support
  83. endef
  84. $(eval $(call KernelPackage,ieee80211-softmac))
  85. define KernelPackage/net-bcm43xx
  86. SUBMENU:=$(WIRELESS_MENU)
  87. TITLE:=Broadcom BCM43xx driver
  88. DEPENDS:=@TARGET_brcm47xx||TARGET_brcm63xx +kmod-ieee80211-softmac
  89. KCONFIG:=CONFIG_BCM43XX
  90. FILES:=$(LINUX_DIR)/drivers/net/wireless/bcm43xx/bcm43xx.$(LINUX_KMOD_SUFFIX)
  91. AUTOLOAD:=$(call AutoLoad,50,bcm43xx)
  92. endef
  93. define KernelPackage/net-bcm43xx/description
  94. Kernel support for Broadcom BCM43xx
  95. Includes:
  96. - bcm43xx
  97. endef
  98. $(eval $(call KernelPackage,net-bcm43xx))
  99. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.29)),1)
  100. IPW_DIR:=ipw2x00/
  101. endif
  102. define KernelPackage/net-libipw
  103. SUBMENU:=$(WIRELESS_MENU)
  104. TITLE:=libipw for ipw2100 and ipw2200
  105. DEPENDS:=@PCI_SUPPORT +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 @LINUX_2_6_29||LINUX_2_6_30
  106. KCONFIG:=CONFIG_LIBIPW
  107. FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)libipw.$(LINUX_KMOD_SUFFIX)
  108. AUTOLOAD:=$(call AutoLoad,49,libipw)
  109. endef
  110. define KernelPackage/net-libipw/description
  111. Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
  112. endef
  113. $(eval $(call KernelPackage,net-libipw))
  114. define KernelPackage/net-ipw2100
  115. SUBMENU:=$(WIRELESS_MENU)
  116. TITLE:=Intel IPW2100 driver
  117. DEPENDS:=@PCI_SUPPORT +!LINUX_2_6_29&&!LINUX_2_6_30:kmod-ieee80211 +LINUX_2_6_29||LINUX_2_6_30:kmod-net-libipw
  118. KCONFIG:=CONFIG_IPW2100
  119. FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)ipw2100.$(LINUX_KMOD_SUFFIX)
  120. AUTOLOAD:=$(call AutoLoad,50,ipw2100)
  121. endef
  122. define KernelPackage/net-ipw2100/description
  123. Kernel support for Intel IPW2100
  124. Includes:
  125. - ipw2100
  126. endef
  127. $(eval $(call KernelPackage,net-ipw2100))
  128. define KernelPackage/net-ipw2200
  129. SUBMENU:=$(WIRELESS_MENU)
  130. TITLE:=Intel IPW2200 driver
  131. DEPENDS:=@PCI_SUPPORT +!LINUX_2_6_29&&!LINUX_2_6_30:kmod-ieee80211 +LINUX_2_6_29||LINUX_2_6_30:kmod-net-libipw
  132. KCONFIG:=CONFIG_IPW2200
  133. FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)ipw2200.$(LINUX_KMOD_SUFFIX)
  134. AUTOLOAD:=$(call AutoLoad,50,ipw2200)
  135. endef
  136. define KernelPackage/net-ipw2200/description
  137. Kernel support for Intel IPW2200
  138. Includes:
  139. - ipw2200
  140. endef
  141. $(eval $(call KernelPackage,net-ipw2200))
  142. define KernelPackage/net-airo
  143. SUBMENU:=$(WIRELESS_MENU)
  144. TITLE:=Cisco Aironet driver
  145. DEPENDS:=@PCI_SUPPORT
  146. KCONFIG:=CONFIG_AIRO
  147. FILES:=$(LINUX_DIR)/drivers/net/wireless/airo.$(LINUX_KMOD_SUFFIX)
  148. AUTOLOAD:=$(call AutoLoad,50,airo)
  149. endef
  150. define KernelPackage/net-airo/description
  151. Kernel support for Cisco Aironet cards
  152. endef
  153. $(eval $(call KernelPackage,net-airo))
  154. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.29)),1)
  155. ORINOCO_DIR:=orinoco/
  156. endif
  157. define KernelPackage/net-hermes
  158. SUBMENU:=$(WIRELESS_MENU)
  159. TITLE:=Hermes 802.11b chipset support
  160. DEPENDS:=@LINUX_2_6 @PCI_SUPPORT||PCMCIA_SUPPORT
  161. KCONFIG:=CONFIG_HERMES \
  162. CONFIG_HERMES_CACHE_FW_ON_INIT=n
  163. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
  164. FILES:= \
  165. $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)hermes.$(LINUX_KMOD_SUFFIX) \
  166. $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)orinoco.$(LINUX_KMOD_SUFFIX) \
  167. $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)hermes_dld.$(LINUX_KMOD_SUFFIX)
  168. AUTOLOAD:=$(call AutoLoad,50,hermes hermes_dld orinoco)
  169. else
  170. FILES:= \
  171. $(LINUX_DIR)/drivers/net/wireless/hermes.$(LINUX_KMOD_SUFFIX) \
  172. $(LINUX_DIR)/drivers/net/wireless/orinoco.$(LINUX_KMOD_SUFFIX)
  173. AUTOLOAD:=$(call AutoLoad,50,hermes orinoco)
  174. endif
  175. endef
  176. define KernelPackage/net-hermes/description
  177. Kernel support for Hermes 802.11b chipsets
  178. endef
  179. $(eval $(call KernelPackage,net-hermes))
  180. define KernelPackage/net-hermes-pci
  181. SUBMENU:=$(WIRELESS_MENU)
  182. TITLE:=Intersil Prism 2.5 PCI support
  183. DEPENDS:=@PCI_SUPPORT kmod-net-hermes
  184. KCONFIG:=CONFIG_PCI_HERMES
  185. FILES:=$(LINUX_DIR)/drivers/net/wireless/orinoco_pci.$(LINUX_KMOD_SUFFIX)
  186. AUTOLOAD:=$(call AutoLoad,55,orinoco_pci)
  187. endef
  188. define KernelPackage/net-hermes-pci/description
  189. Kernel modules for Intersil Prism 2.5 PCI support
  190. endef
  191. $(eval $(call KernelPackage,net-hermes-pci))
  192. define KernelPackage/net-hermes-plx
  193. SUBMENU:=$(WIRELESS_MENU)
  194. TITLE:=PLX9052 based PCI adaptor
  195. DEPENDS:=@PCI_SUPPORT kmod-net-hermes
  196. KCONFIG:=CONFIG_PLX_HERMES
  197. FILES:=$(LINUX_DIR)/drivers/net/wireless/orinoco_plx.$(LINUX_KMOD_SUFFIX)
  198. AUTOLOAD:=$(call AutoLoad,55,orinoco_plx)
  199. endef
  200. define KernelPackage/net-hermes-plx/description
  201. Kernel modules for Hermes in PLX9052 based PCI adaptors
  202. endef
  203. $(eval $(call KernelPackage,net-hermes-plx))
  204. define KernelPackage/net-prism54
  205. SUBMENU:=$(WIRELESS_MENU)
  206. TITLE:=Intersil Prism54 support
  207. DEPENDS:=@PCI_SUPPORT
  208. KCONFIG:=CONFIG_PRISM54
  209. FILES:=$(LINUX_DIR)/drivers/net/wireless/prism54/prism54.$(LINUX_KMOD_SUFFIX)
  210. AUTOLOAD:=$(call AutoLoad,60,prism54)
  211. endef
  212. define KernelPackage/net-prism54/description
  213. Kernel modules for Intersil Prism54 support
  214. endef
  215. # Prism54 FullMAC firmware (jbnore.free.fr seems to be rather slow, so we use daemonizer.de)
  216. PRISM54_FW:=1.0.4.3.arm
  217. define Download/net-prism54
  218. FILE:=$(PRISM54_FW)
  219. URL:=http://daemonizer.de/prism54/prism54-fw/fw-fullmac/
  220. MD5SUM:=8bd4310971772a486b9784c77f8a6df9
  221. endef
  222. define KernelPackage/net-prism54/install
  223. $(INSTALL_DIR) $(1)/lib/firmware
  224. $(INSTALL_DATA) $(DL_DIR)/$(PRISM54_FW) $(1)/lib/firmware/isl3890
  225. endef
  226. $(eval $(call Download,net-prism54))
  227. $(eval $(call KernelPackage,net-prism54))