mac80211: optimize mac address comparisons to improve performance
[openwrt.git] / package / mac80211 / Makefile
index df8dcd5..0eb6fa8 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2007-2011 OpenWrt.org
+# Copyright (C) 2007-2012 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=2011-12-01
+PKG_VERSION:=2012-02-27
 PKG_RELEASE:=1
 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
-PKG_MD5SUM:=8d1fe2fd6bbabc4fbbf31dfbf015c62c
+PKG_MD5SUM:=ccd51c46813c25090ce657c8b7c67615
 
 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
@@ -26,7 +26,7 @@ PKG_DRIVERS = \
        rtl8180 rtl8187 zd1211rw mac80211-hwsim carl9170 b43 b43legacy \
        ath9k-common ath9k ath9k-htc ath net-libipw net-ipw2100 net-ipw2200 \
        mwl8k net-hermes net-hermes-pci net-hermes-plx net-hermes-pcmcia \
-       iwl-legacy iwl3945 iwl4965 iwlagn lib80211
+       iwl-legacy iwl3945 iwl4965 iwlagn wl12xx lib80211
 
 PKG_CONFIG_DEPENDS:= \
        CONFIG_PACKAGE_kmod-mac80211 \
@@ -755,6 +755,22 @@ define KernelPackage/mwl8k/description
  Kernel modules for Marvell TOPDOG 802.11 Wireless cards
 endef
 
+
+define KernelPackage/wl12xx
+  $(call KernelPackage/mac80211/Default)
+  TITLE:=Driver for TI WL12xx
+  URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
+  DEPENDS+= @TARGET_omap4 +kmod-mac80211
+  FILES:= \
+       $(PKG_BUILD_DIR)/drivers/net/wireless/wl12xx/wl12xx.ko \
+       $(PKG_BUILD_DIR)/drivers/net/wireless/wl12xx/wl12xx_sdio.ko
+  AUTOLOAD:=$(call AutoLoad,61,wl12xx wl12xx_sdio)
+endef
+
+define KernelPackage/wl12xx/description
+ Kernel modules for TI WL12xx
+endef
+
 #Broadcom firmware
 ifneq ($(CONFIG_B43_FW_5_10),)
   PKG_B43_FWV4_NAME:=broadcom-wl
@@ -872,12 +888,12 @@ define KernelPackage/b43/config
 
        choice
                prompt "b43 firmware version"
-               default B43_FW_5_10
+               default B43_FW_5_100_138
                help
                  This option allows you to select the version of the b43 firmware.
 
        config B43_FW_4_150
-               bool "Firmware 410.2160 from driver 4.150.10.5 (stable)"
+               bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
                help
                  Stable firmware for BCM43xx devices.
 
@@ -902,7 +918,7 @@ define KernelPackage/b43/config
                  If unsure, select the "stable" firmware.
    
        config B43_FW_5_100_138
-               bool "Firmware 666.2 from driver 5.100.138"
+               bool "Firmware 666.2 from driver 5.100.138 (stable)"
                help
                  Newer experimental firmware for BCM43xx devices.
 
@@ -987,7 +1003,6 @@ define KernelPackage/b43/config
 
        config PACKAGE_B43_PHY_N
                bool "Enable support for N-PHYs"
-               select B43_FW_5_100_138
                default y
                help
                  Enable support for BCM4321 and BCM4322.
@@ -998,7 +1013,6 @@ define KernelPackage/b43/config
 
        config PACKAGE_B43_PHY_HT
                bool "Enable support for HT-PHYs"
-               select B43_FW_5_100_138
                default n
                help
                  Currently broken.
@@ -1008,7 +1022,6 @@ define KernelPackage/b43/config
        config PACKAGE_B43_PHY_LCN
                bool "Enable support for LCN-PHYs"
                depends on BROKEN
-               select B43_FW_5_100_138
                default n
                help
                  Currently broken.
@@ -1064,6 +1077,34 @@ define KernelPackage/b43legacy/description
 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
 endef
 
+define KernelPackage/brcmsmac
+  $(call KernelPackage/mac80211/Default)
+  TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
+  URL:=http://linuxwireless.org/en/users/Drivers/brcm80211
+  DEPENDS+= +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8
+  FILES:= \
+       $(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko \
+       $(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
+  AUTOLOAD:=$(call AutoLoad,30,brcmutil brcmsmac)
+  MENU:=1
+endef
+
+define KernelPackage/brcmsmac/description
+ Kernel modules for Broadcom IEEE802.11n PCIe Wireless cards
+endef
+
+define KernelPackage/brcmsmac/config
+       menu "Configuration"
+               depends on PACKAGE_kmod-brcmsmac
+
+       config PACKAGE_BRCM80211_DEBUG
+               bool "brcmsmac wireless debugging"
+               help
+                 Say Y, if you want to debug brcmsmac wireless driver.
+
+       endmenu
+endef
+
 BUILDFLAGS:= \
        -I$(PKG_BUILD_DIR)/include \
        $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
@@ -1084,7 +1125,7 @@ BUILDFLAGS:= \
        $(if $(CONFIG_PACKAGE_B43_PHY_N),-DCONFIG_B43_PHY_N) \
        $(if $(CONFIG_PACKAGE_B43_PHY_HT),-DCONFIG_B43_PHY_HT) \
        $(if $(CONFIG_PACKAGE_B43_PHY_LCN),-DCONFIG_B43_PHY_LCN) \
-       -DCONFIG_B43_BCMA \
+       -DCONFIG_B43_BCMA -DCONFIG_B43_BCMA_EXTRA \
        -DCONFIG_B43_SSB \
        $(if $(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS),-DCONFIG_RT2X00_LIB_DEBUGFS) \
        $(if $(CONFIG_PACKAGE_RT2X00_DEBUG),-DCONFIG_RT2X00_DEBUG) \
@@ -1095,10 +1136,13 @@ BUILDFLAGS:= \
        $(if $(NEED_RT2X00_LIB_LEDS),-DCONFIG_RT2X00_LIB_LEDS) \
        $(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),-DCONFIG_RT2X00_LIB_PCI) \
        $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2X00_LIB_USB) \
+       $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2800USB_RT53XX) \
        $(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),-DCONFIG_RT2X00_LIB_SOC) \
        $(if $(CONFIG_TARGET_atheros),-DCONFIG_ATH5K_AHB,-DCONFIG_ATH5K_PCI) \
        $(if $(CONFIG_PACKAGE_kmod-iwl3945),-DCONFIG_IWL3945) \
-       $(if $(CONFIG_PACKAGE_kmod-iwl4965),-DCONFIG_COMPAT_IWL4965)
+       $(if $(CONFIG_PACKAGE_kmod-iwl4965),-DCONFIG_COMPAT_IWL4965) \
+       $(if $(CONFIG_PACKAGE_kmod-wl12xx),-DCONFIG_WL12XX -DCONFIG_COMPAT_WL12XX_SDIO) \
+       $(if $(CONFIG_PACKAGE_BRCM80211_DEBUG),-DCONFIG_BRCMDBG)
 
 MAKE_OPTS:= \
        CROSS_COMPILE="$(KERNEL_CROSS)" \
@@ -1171,7 +1215,6 @@ MAKE_OPTS:= \
        CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
        CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
        CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
-       CONFIG_RT2800USB_RT53XX=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),y) \
        CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
        CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
        CONFIG_RTL8192CE= \
@@ -1205,7 +1248,8 @@ MAKE_OPTS:= \
        CONFIG_USB_NET_CDCETHER= \
        CONFIG_USB_USBNET= \
        CONFIG_AT76C50X_USB= \
-       CONFIG_WL12XX= \
+       CONFIG_WL12XX=$(if $(CONFIG_PACKAGE_kmod-wl12xx),m) \
+       CONFIG_COMPAT_WL12XX_SDIO=$(if $(CONFIG_PACKAGE_kmod-wl12xx),m) \
        CONFIG_EEPROM_93CX6= \
        CONFIG_HERMES=$(if $(CONFIG_PACKAGE_kmod-net-hermes),m) \
        CONFIG_HERMES_CACHE_FW_ON_INIT= \
@@ -1220,6 +1264,7 @@ MAKE_OPTS:= \
        CONFIG_ORINOCO_USB= \
        CONFIG_IWM= \
        CONFIG_MWIFIEX= \
+       CONFIG_ATH6KL= \
        CONFIG_MAC80211_RC_MINSTREL_HT=y \
        MADWIFI= \
        CONFIG_B44= \
@@ -1228,10 +1273,11 @@ MAKE_OPTS:= \
        CONFIG_ATL1E= \
        CONFIG_ATL1C= \
        CONFIG_BRCMFMAC= \
-       CONFIG_BRCMUMAC= \
-       CONFIG_BRCMSMAC= \
+       CONFIG_BRCMUTIL=$(if $(CONFIG_PACKAGE_kmod-brcmsmac),m) \
+       CONFIG_BRCMSMAC=$(if $(CONFIG_PACKAGE_kmod-brcmsmac),m) \
+       CONFIG_BRCMDBG=$(if $(CONFIG_PACKAGE_BRCM80211_DEBUG),y) \
        KLIB_BUILD="$(LINUX_DIR)" \
-       MODPROBE=: \
+       MODPROBE=true \
        KLIB=$(TARGET_MODULES_DIR) \
        KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
        KBUILD_LDFLAGS_MODULE_PREREQ=
@@ -1251,13 +1297,14 @@ define Build/Prepare
        $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
        rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
        rm -rf $(PKG_BUILD_DIR)/include/linux/bcma
+       rm -f $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h
        rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
 endef
 
 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
  define Build/Compile/kmod
        rm -rf $(PKG_BUILD_DIR)/modules
-       $(MAKE) $(PKG_JOBS) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
+       $(MAKE) $(PKG_JOBS) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) modules
  endef
 endif
 
@@ -1342,6 +1389,16 @@ define KernelPackage/rt2800-usb/install
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
 endef
 
+define KernelPackage/wl12xx/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-3.bin \
+               $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-plt-3.bin \
+               $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-nvs.bin \
+               $(1)/lib/firmware/ti-connectivity
+endef
+
+
 define KernelPackage/zd1211rw/install
        $(INSTALL_DIR) $(1)/lib/firmware/zd1211
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
@@ -1356,14 +1413,14 @@ define KernelPackage/ath9k-htc/install
 endef
 
 define KernelPackage/mwl8k/install
-       $(INSTALL_DIR) $(1)/lib/firmware
+       $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-2.fw \
                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
-               $(1)/lib/firmware/
+               $(1)/lib/firmware/mwl8k/
 endef
 
 define KernelPackage/net-ipw2100/install
@@ -1463,6 +1520,14 @@ ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
 endif
 endef
 
+define KernelPackage/brcmsmac/install
+       $(INSTALL_DIR) $(1)/lib/firmware/brcm
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
+               $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
+               $(1)/lib/firmware/brcm/
+endef
+
 $(eval $(call KernelPackage,ath5k))
 $(eval $(call KernelPackage,lib80211))
 $(eval $(call KernelPackage,libertas-usb))
@@ -1496,6 +1561,7 @@ $(eval $(call KernelPackage,ath))
 $(eval $(call KernelPackage,carl9170))
 $(eval $(call KernelPackage,b43))
 $(eval $(call KernelPackage,b43legacy))
+$(eval $(call KernelPackage,brcmsmac))
 $(eval $(call KernelPackage,net-libipw))
 $(eval $(call KernelPackage,net-ipw2100))
 $(eval $(call KernelPackage,net-ipw2200))
@@ -1508,3 +1574,4 @@ $(eval $(call KernelPackage,net-hermes))
 $(eval $(call KernelPackage,net-hermes-pci))
 $(eval $(call KernelPackage,net-hermes-plx))
 $(eval $(call KernelPackage,net-hermes-pcmcia))
+$(eval $(call KernelPackage,wl12xx))
This page took 0.034447 seconds and 4 git commands to generate.