blob: 6185836bd87f90f8018eea80d44a42ccad00a2eb [file] [log] [blame]
export
## NOTE
## Make sure to have each variable declaration start
## in the first column, no whitespace allowed.
ifeq ($(wildcard $(KLIB_BUILD)/.config),)
# These will be ignored by compat autoconf
CONFIG_PCI=y
CONFIG_USB=y
CONFIG_PCMCIA=y
else
include $(KLIB_BUILD)/.config
endif
# Wireless subsystem stuff
CONFIG_MAC80211=m
# Enable QOS for 2.6.22, we'll do some hacks here to enable it.
# You will need this for HT support (802.11n) and WME (802.11e).
# If you are >= 2.6.23 we'll only warn when you don't have MQ support
# or NET_SCHED enabled.
#
# We could consider just quiting if MQ and NET_SCHED is disabled
# as I suspect all users of this package want 802.11e (WME) and
# 802.11n (HT) support.
ifeq ($(shell test -e $(KLIB_BUILD)/Makefile && echo yes),yes)
KERNEL_SUBLEVEL = $(shell $(MAKE) -C $(KLIB_BUILD) kernelversion | sed -n 's/^2\.6\.\([0-9]\+\).*/\1/p')
ifeq ($(shell test $(KERNEL_SUBLEVEL) -lt 23 && echo yes),yes)
$(error "ERROR: There is a bug with compat-wireless on 2.6.22. Remove me if you want to fix me")
CONFIG_MAC80211_QOS=y
else
# we're in a kernel >= 2.6.23
# we're in kernel >= 2.6.27
ifeq ($(shell test $(KERNEL_SUBLEVEL) -gt 26 && echo yes),yes)
$(error "ERROR: You should use another tree/tarball for newer kernels, this one is for kenrels <= 2.6.26")
endif
ifneq ($(KERNELRELEASE),) # This prevents a warning
ifeq ($(CONFIG_NETDEVICES_MULTIQUEUE),) # checks MQ first
QOS_REQS_MISSING+=CONFIG_NETDEVICES_MULTIQUEUE
endif
ifeq ($(CONFIG_NET_SCHED),)
QOS_REQS_MISSING+=CONFIG_NET_SCHED
endif
ifeq ($(QOS_REQS_MISSING),) # if our dependencies match for MAC80211_QOS
CONFIG_MAC80211_QOS=y
else # Complain about our missing dependencies
$(warning "WARNING: You are running a kernel >= 2.6.23, you should enable in it $(QOS_REQS_MISSING) for 802.11[ne] support")
endif
endif # In build module mode
endif # kernel release check
endif # kernel Makefile check
CONFIG_MAC80211_RC_DEFAULT=pid
CONFIG_MAC80211_RC_PID=y
# enable mesh networking too
CONFIG_MAC80211_MESH=y
CONFIG_CFG80211=m
CONFIG_NL80211=y
# mac80211 test driver
CONFIG_MAC80211_HWSIM=m
# PCI Drivers
ifneq ($(CONFIG_PCI),)
CONFIG_ATH5K=m
CONFIG_ATH5K_DEBUG=n
# For now we build ath9k only on kernel 2.6.26
ifeq ($(shell test -e $(KLIB_BUILD)/Makefile && echo yes),yes)
KERNEL_SUBLEVEL = $(shell $(MAKE) -C $(KLIB_BUILD) kernelversion | sed -n 's/^2\.6\.\([0-9]\+\).*/\1/p')
ifeq ($(shell test $(KERNEL_SUBLEVEL) -gt 25 && echo yes),yes)
endif
CONFIG_ATH9K=m
endif
# Required for older kernels which still use this flag.
CONFIG_IWLWIFI=m
CONFIG_IWLCORE=m
CONFIG_IWL3945=m
CONFIG_IWL4965=m
CONFIG_IWL4965_HT=y
CONFIG_B43=m
# B43 uses PCMCIA only for Compact Flash. The Cardbus cards uses PCI
# Example, bcm4318:
# http://www.multicap.biz/wireless-lan/indoor-wlan-hardware/sdc-cf10g-80211g-compact-flash-module
CONFIG_B43_PCMCIA=y
CONFIG_B43_DMA=y
CONFIG_B43_PIO=y
# B43_PIO selects SSB_BLOCKIO
CONFIG_SSB_BLOCKIO=y
CONFIG_B43_DMA_AND_PIO_MODE=y
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
#CONFIG_B43_RFKILL=n
CONFIG_B43_LEDS=y
# CONFIG_B43_DEBUG is not set
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# The Intel ipws
CONFIG_IPW2100=m
CONFIG_IPW2100_MONITOR=y
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPW2200_PROMISCUOUS=y
# The above enables use a second interface prefixed 'rtap'.
# Example usage:
#
# % modprobe ipw2200 rtap_iface=1
# % ifconfig rtap0 up
# % tethereal -i rtap0
#
# If you do not specify 'rtap_iface=1' as a module parameter then
# the rtap interface will not be created and you will need to turn
# it on via sysfs:
#
# % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface
CONFIG_IPW2200_QOS=y
NEED_IEEE80211=y
CONFIG_P54_PCI=m
CONFIG_SSB_PCIHOST_POSSIBLE=y
CONFIG_SSB_PCIHOST=y
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
CONFIG_SSB_DRIVER_PCICORE=y
CONFIG_SSB_B43_PCI_BRIDGE=y
CONFIG_B44=m
CONFIG_RTL8180=m
CONFIG_ADM8211=m
CONFIG_RT2X00_LIB_PCI=m
CONFIG_RT2400PCI=m
CONFIG_RT2500PCI=m
NEED_RT2X00=y
# Two rt2x00 drivers require firmware: rt61pci and rt73usb. They depend on
# CRC to check the firmware. We check here first for the PCI
# driver as we're in the PCI section.
ifneq ($(CONFIG_CRC_ITU_T),)
CONFIG_RT61PCI=m
NEED_RT2X00_FIRMWARE=y
endif
endif
## end of PCI
# This is required for some cards
CONFIG_EEPROM_93CX6=m
# USB Drivers
ifneq ($(CONFIG_USB),)
CONFIG_ZD1211RW=m
# support for USB Wireless devices using Atmel at76c503,
# at76c505 or at76c505a chips.
CONFIG_USB_ATMEL=m
# Stuff here things which depend on kernel versions for USB
ifeq ($(shell test -e $(KLIB_BUILD)/Makefile && echo yes),yes)
KERNEL_SUBLEVEL = $(shell $(MAKE) -C $(KLIB_BUILD) kernelversion | sed -n 's/^2\.6\.\([0-9]\+\).*/\1/p')
ifeq ($(shell test $(KERNEL_SUBLEVEL) -gt 21 && echo yes),yes)
# Sorry, rndis_wlan uses cancel_work_sync which is new and can't be done in compat...
# Wireless RNDIS USB support (RTL8185 802.11g) A-Link WL54PC
# All of these devices are based on Broadcom 4320 chip which
# is only wireless RNDIS chip known to date.
# Note: this depends on CONFIG_USB_NET_RNDIS_HOST and CONFIG_USB_NET_CDCETHER
# it also requires new RNDIS_HOST and CDC_ETHER modules which we add
CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_RNDIS_WLAN=m
CONFIG_USB_NET_CDCETHER=m
endif
endif
CONFIG_P54_USB=m
CONFIG_RTL8187=m
# RT2500USB does not require firmware
CONFIG_RT2500USB=m
CONFIG_RT2X00_LIB_USB=m
NEED_RT2X00=y
# RT73USB requires firmware
ifneq ($(CONFIG_CRC_ITU_T),)
CONFIG_RT73USB=m
NEED_RT2X00_FIRMWARE=y
endif
endif # end of USB driver list
# Common rt2x00 requirements
ifeq ($(NEED_RT2X00),y)
CONFIG_RT2X00=m
CONFIG_RT2X00_LIB=m
# CONFIG_RT2X00_LIB_DEBUGFS is not set
# CONFIG_RT2X00_DEBUG is not set
endif
ifeq ($(NEED_RT2X00_FIRMWARE),y)
CONFIG_RT2X00_LIB_FIRMWARE=y
endif
# p54
CONFIG_P54_COMMON=m
# Sonics Silicon Backplane
CONFIG_SSB_POSSIBLE=y
CONFIG_SSB=m
CONFIG_SSB_SPROM=y
ifneq ($(CONFIG_PCMCIA),)
CONFIG_SSB_PCMCIAHOST=y
endif
# These two are for mips
CONFIG_SSB_DRIVER_MIPS=n
CONFIG_SSB_PCICORE_HOSTMODE=n
# CONFIG_SSB_DEBUG is not set
# CONFIG_SSB_DRIVER_EXTIF=y
ifneq ($(CONFIG_USB),)
CONFIG_LIBERTAS_USB=m
NEED_LIBERTAS=y
endif
ifneq ($(CONFIG_PCMCIA),)
CONFIG_LIBERTAS_CS=m
NEED_LIBERTAS=y
endif
ifeq ($(NEED_LIBERTAS),y)
CONFIG_LIBERTAS=m
# Libertas uses the old stack but not fully, it will soon
# be cleaned.
NEED_IEEE80211=y
endif
ifeq ($(NEED_IEEE80211),y)
# Old ieee80211 "stack"
# Note: old softmac is scheduled for removal so we
# ignore that stuff
CONFIG_IEEE80211=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_SOFTMAC=n
endif