X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/2cd399391e226894d2f7b3837a0f0e1af5f151bc..8cbeef3fb8238deb798172f63d5994cbc7bc9a85:/package/kernel/modules/wireless.mk diff --git a/package/kernel/modules/wireless.mk b/package/kernel/modules/wireless.mk index a9ec1f5de..cca2d9e83 100644 --- a/package/kernel/modules/wireless.mk +++ b/package/kernel/modules/wireless.mk @@ -1,17 +1,18 @@ -# -# Copyright (C) 2006 OpenWrt.org +# +# Copyright (C) 2006-2008 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # -# $Id$ WIRELESS_MENU:=Wireless Drivers +# NOTE: dependency on 2.6 was removed since it was inherited by kmod-hostap +# and prevented it from even showing up in menuconfig on 2.4 define KernelPackage/ieee80211 SUBMENU:=$(WIRELESS_MENU) TITLE:=802.11 Networking stack - DEPENDS:=@LINUX_2_6 +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic + 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 KCONFIG:= \ CONFIG_IEEE80211 \ CONFIG_IEEE80211_CRYPT_WEP \ @@ -34,63 +35,83 @@ endef define KernelPackage/ieee80211/description Kernel modules for 802.11 Networking stack - Includes: - - ieee80211_crypt - - ieee80211 - - ieee80211_crypt_wep - - ieee80211_crypt_tkip + Includes: + - ieee80211_crypt + - ieee80211 + - ieee80211_crypt_wep + - ieee80211_crypt_tkip - ieee80211_crytp_ccmp endef $(eval $(call KernelPackage,ieee80211)) -define KernelPackage/ieee80211-softmac +define KernelPackage/lib80211 SUBMENU:=$(WIRELESS_MENU) - TITLE:=ieee80211 SoftMAC support - DEPENDS:=kmod-ieee80211 - KCONFIG:=CONFIG_IEEE80211_SOFTMAC - FILES:=$(LINUX_DIR)/net/ieee80211/softmac/ieee80211softmac.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,20,ieee80211softmac) + TITLE:=802.11 Networking stack + DEPENDS:=@LINUX_2_6_29||LINUX_2_6_30 + KCONFIG:= \ + CONFIG_LIB80211 \ + CONFIG_LIB80211_CRYPT_WEP \ + CONFIG_LIB80211_CRYPT_TKIP \ + CONFIG_LIB80211_CRYPT_CCMP + FILES:= \ + $(LINUX_DIR)/net/wireless/lib80211.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/net/wireless/lib80211_crypt_wep.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/net/wireless/lib80211_crypt_ccmp.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/net/wireless/lib80211_crypt_tkip.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,10, \ + lib80211 \ + lib80211_crypt_wep \ + lib80211_crypt_ccmp \ + lib80211_crypt_tkip \ + ) endef -define KernelPackage/ieee80211-softmac/description - Kernel modules for 802.11 SoftMAC support +define KernelPackage/lib80211/description + Kernel modules for 802.11 Networking stack + Includes: + - lib80211 + - lib80211_crypt_wep + - lib80211_crypt_tkip + - lib80211_crytp_ccmp endef -$(eval $(call KernelPackage,ieee80211-softmac)) +$(eval $(call KernelPackage,lib80211)) + +ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.29)),1) + IPW_DIR:=ipw2x00/ +endif -define KernelPackage/net-bcm43xx +define KernelPackage/net-libipw SUBMENU:=$(WIRELESS_MENU) - TITLE:=Broadcom BCM43xx driver - DEPENDS:=@TARGET_brcm47xx||TARGET_brcm63xx +kmod-ieee80211-softmac - KCONFIG:=CONFIG_BCM43XX - FILES:=$(LINUX_DIR)/drivers/net/wireless/bcm43xx/bcm43xx.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,50,bcm43xx) + TITLE:=libipw for ipw2100 and ipw2200 + DEPENDS:=@PCI_SUPPORT +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 @LINUX_2_6_29||LINUX_2_6_30 + KCONFIG:=CONFIG_LIBIPW + FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)libipw.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,49,libipw) endef -define KernelPackage/net-bcm43xx/description - Kernel support for Broadcom BCM43xx - Includes: - - bcm43xx +define KernelPackage/net-libipw/description + Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200. endef -$(eval $(call KernelPackage,net-bcm43xx)) +$(eval $(call KernelPackage,net-libipw)) define KernelPackage/net-ipw2100 SUBMENU:=$(WIRELESS_MENU) TITLE:=Intel IPW2100 driver - DEPENDS:=@PCI_SUPPORT +kmod-ieee80211 + DEPENDS:=@PCI_SUPPORT +!LINUX_2_6_29&&!LINUX_2_6_30:kmod-ieee80211 +LINUX_2_6_29||LINUX_2_6_30:kmod-net-libipw KCONFIG:=CONFIG_IPW2100 - FILES:=$(LINUX_DIR)/drivers/net/wireless/ipw2100.$(LINUX_KMOD_SUFFIX) + FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)ipw2100.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,50,ipw2100) endef define KernelPackage/net-ipw2100/description Kernel support for Intel IPW2100 - Includes: + Includes: - ipw2100 endef @@ -100,15 +121,15 @@ $(eval $(call KernelPackage,net-ipw2100)) define KernelPackage/net-ipw2200 SUBMENU:=$(WIRELESS_MENU) TITLE:=Intel IPW2200 driver - DEPENDS:=@PCI_SUPPORT +kmod-ieee80211 + DEPENDS:=@PCI_SUPPORT +!LINUX_2_6_29&&!LINUX_2_6_30:kmod-ieee80211 +LINUX_2_6_29||LINUX_2_6_30:kmod-net-libipw KCONFIG:=CONFIG_IPW2200 - FILES:=$(LINUX_DIR)/drivers/net/wireless/ipw2200.$(LINUX_KMOD_SUFFIX) + FILES:=$(LINUX_DIR)/drivers/net/wireless/$(IPW_DIR)ipw2200.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,50,ipw2200) endef define KernelPackage/net-ipw2200/description Kernel support for Intel IPW2200 - Includes: + Includes: - ipw2200 endef @@ -131,15 +152,34 @@ endef $(eval $(call KernelPackage,net-airo)) +ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.29)),1) + ORINOCO_DIR:=orinoco/ +endif + define KernelPackage/net-hermes SUBMENU:=$(WIRELESS_MENU) TITLE:=Hermes 802.11b chipset support DEPENDS:=@LINUX_2_6 @PCI_SUPPORT||PCMCIA_SUPPORT - KCONFIG:=CONFIG_HERMES + KCONFIG:=CONFIG_HERMES \ + CONFIG_HERMES_CACHE_FW_ON_INIT=n +ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.30)),1) + FILES:= \ + $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)orinoco.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,50,orinoco) +else +ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1) + FILES:= \ + $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)hermes.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)orinoco.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/drivers/net/wireless/$(ORINOCO_DIR)hermes_dld.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,50,hermes hermes_dld orinoco) +else FILES:= \ $(LINUX_DIR)/drivers/net/wireless/hermes.$(LINUX_KMOD_SUFFIX) \ $(LINUX_DIR)/drivers/net/wireless/orinoco.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,50,hermes orinoco) +endif +endif endef define KernelPackage/net-hermes/description @@ -194,20 +234,20 @@ define KernelPackage/net-prism54/description Kernel modules for Intersil Prism54 support endef -$(eval $(call KernelPackage,net-prism54)) - +# Prism54 FullMAC firmware (jbnore.free.fr seems to be rather slow, so we use daemonizer.de) +PRISM54_FW:=1.0.4.3.arm -define KernelPackage/net-zd1211rw - SUBMENU:=$(WIRELESS_MENU) - TITLE:=Zydas ZD1211 support - DEPENDS:=@LINUX_2_6 @USB_SUPPORT +kmod-ieee80211 +zd1211-firmware - KCONFIG:=CONFIG_ZD1211RW - FILES:=$(LINUX_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,60,zd1211rw) +define Download/net-prism54 + FILE:=$(PRISM54_FW) + URL:=http://daemonizer.de/prism54/prism54-fw/fw-fullmac/ + MD5SUM:=8bd4310971772a486b9784c77f8a6df9 endef -define KernelPackage/net-zd1211rw/description - Kernel modules for Zydas ZD1211 support, kernel version +define KernelPackage/net-prism54/install + $(INSTALL_DIR) $(1)/lib/firmware + $(INSTALL_DATA) $(DL_DIR)/$(PRISM54_FW) $(1)/lib/firmware/isl3890 endef -$(eval $(call KernelPackage,net-zd1211rw)) +$(eval $(call Download,net-prism54)) +$(eval $(call KernelPackage,net-prism54)) +