2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
10 include $(INCLUDE_DIR
)/kernel.mk
13 PKG_VERSION
:=r2568-20070710
14 PKG_BRANCH
:=madwifi-ng
17 PKG_SOURCE
:=$(PKG_BRANCH
)-$(PKG_VERSION
).
tar.gz
18 PKG_SOURCE_URL
:=http
://snapshots.madwifi.org
/$(PKG_BRANCH
)
19 PKG_MD5SUM
:=fe5d41acd085d2c46934be3f8839e694
21 PKG_BUILD_DIR
:=$(KERNEL_BUILD_DIR
)/$(PKG_BRANCH
)-$(PKG_VERSION
)
23 include $(INCLUDE_DIR
)/package.mk
26 HAL_TARGET
:=mips-be-elf
29 HAL_TARGET
:=mips-le-elf
35 HAL_TARGET
:=xscale-be-elf
38 HAL_TARGET
:=xscale-le-elf
40 ifeq ($(ARCH
),powerpc
)
41 HAL_TARGET
:=powerpc-be-elf
44 ifneq ($(CONFIG_TARGET_atheros
),)
48 ifneq ($(CONFIG_PCI_SUPPORT
),)
53 # XXX: remove this check later when we have PCI support properly detected on all targets
54 ifneq ($(CONFIG_TARGET_uml
),)
58 RATE_CONTROL
:=minstrel
61 $(PKG_BUILD_DIR
)/net80211
/wlan.
$(LINUX_KMOD_SUFFIX
) \
62 $(PKG_BUILD_DIR
)/net80211
/wlan_scan_ap.
$(LINUX_KMOD_SUFFIX
) \
63 $(PKG_BUILD_DIR
)/net80211
/wlan_scan_sta.
$(LINUX_KMOD_SUFFIX
) \
64 $(PKG_BUILD_DIR
)/ath_hal
/ath_hal.
$(LINUX_KMOD_SUFFIX
) \
65 $(PKG_BUILD_DIR
)/ath_rate
/$(RATE_CONTROL
)/ath_rate_
$(RATE_CONTROL
).
$(LINUX_KMOD_SUFFIX
) \
66 $(PKG_BUILD_DIR
)/net80211
/wlan_acl.
$(LINUX_KMOD_SUFFIX
) \
67 $(PKG_BUILD_DIR
)/net80211
/wlan_ccmp.
$(LINUX_KMOD_SUFFIX
) \
68 $(PKG_BUILD_DIR
)/net80211
/wlan_tkip.
$(LINUX_KMOD_SUFFIX
) \
69 $(PKG_BUILD_DIR
)/net80211
/wlan_wep.
$(LINUX_KMOD_SUFFIX
) \
70 $(PKG_BUILD_DIR
)/net80211
/wlan_xauth.
$(LINUX_KMOD_SUFFIX
) \
77 ath_rate_
$(RATE_CONTROL
) \
84 ifeq ($(findstring AHB
,$(BUS
)),AHB
)
85 MADWIFI_FILES
+= $(PKG_BUILD_DIR
)/ath
/ath_ahb.
$(LINUX_KMOD_SUFFIX
)
86 MADWIFI_AUTOLOAD
+= ath_ahb
88 ifeq ($(findstring PCI
,$(BUS
)),PCI
)
89 MADWIFI_FILES
+= $(PKG_BUILD_DIR
)/ath
/ath_pci.
$(LINUX_KMOD_SUFFIX
)
90 MADWIFI_AUTOLOAD
+= ath_pci
93 define KernelPackage
/madwifi
94 SUBMENU
:=Wireless Drivers
95 TITLE
:=Driver for Atheros wireless chipsets
96 URL
:=http
://madwifi.org
/
97 DEPENDS
:=+wireless-tools @PCI_SUPPORT||TARGET_atheros @
!TARGET_avr32 @
!TARGET_etrax @
!TARGET_uml
98 FILES
:=$(MADWIFI_FILES
)
99 AUTOLOAD
:=$(call AutoLoad
,50,$(MADWIFI_AUTOLOAD
))
102 define KernelPackage
/madwifi
/description
103 This package contains a driver for Atheros
802.11a
/b
/g chipsets.
106 define KernelPackage
/madwifi-karma
107 $(call KernelPackage
/madwifi
)
108 TITLE
:=Madwifi for Karma support
109 URL
:=http
://www.digininja.org
/
112 define KernelPackage
/madwifi-karma
/description
113 This package contains a modified driver to be used with
114 the Karma software for Atheros
802.11a
/b
/g chipsets.
118 PATH
="$(TARGET_PATH)" \
119 ARCH
="$(LINUX_KARCH)" \
120 CROSS_COMPILE
="$(TARGET_CROSS)" \
121 TARGET
="$(HAL_TARGET)" \
122 TOOLPREFIX
="$(KERNEL_CROSS)" \
123 TOOLPATH
="$(KERNEL_CROSS)" \
124 KERNELPATH
="$(LINUX_DIR)" \
125 LDOPTS
="--no-warn-mismatch " \
126 ATH_RATE
="ath_rate/$(RATE_CONTROL)" \
131 COPTS
="-DCONFIG_ATHEROS_RATE_DEFAULT='\"$(RATE_CONTROL)\"'" \
133 ifeq ($(findstring AHB
,$(BUS
)),AHB
)
134 define Build
/Compile
/ahb
135 $(MAKE_VARS
) $(MAKE
) -C
$(PKG_BUILD_DIR
) $(MAKE_ARGS
) BUS
="AHB" modules
136 $(MAKE
) -C
$(PKG_BUILD_DIR
) $(MAKE_ARGS
) CFLAGS
="$(TARGET_CFLAGS)" tools
140 ifeq ($(findstring PCI
,$(BUS
)),PCI
)
141 define Build
/Compile
/pci
142 $(MAKE_VARS
) $(MAKE
) -C
$(PKG_BUILD_DIR
) $(MAKE_ARGS
) BUS
="PCI" modules
143 $(MAKE
) -C
$(PKG_BUILD_DIR
) $(MAKE_ARGS
) CFLAGS
="$(TARGET_CFLAGS)" tools
147 define Build
/Configure
148 $(SED
) 's,-E[LB] ,,g' $(PKG_BUILD_DIR
)/hal
/public
/*.inc
149 ifneq ($(CONFIG_PACKAGE_kmod-madwifi-karma
),)
150 $(PATCH
) $(PKG_BUILD_DIR
) .
/files
155 $(call Build
/Compile
/ahb
)
156 $(call Build
/Compile
/pci
)
159 define Build
/InstallDev
160 mkdir
-p
$(1)/usr
/include/madwifi
161 $(CP
) $(PKG_BUILD_DIR
)/include $(1)/usr
/include/madwifi
/
162 mkdir
-p
$(1)/usr
/include/madwifi
/net80211
163 $(CP
) $(PKG_BUILD_DIR
)/net80211
/*.h
$(1)/usr
/include/madwifi
/net80211
/
166 define Build
/UninstallDev
167 rm -rf
$(1)/usr
/include/madwifi
170 define KernelPackage
/madwifi
/install
171 $(INSTALL_DIR
) $(1)/lib
/wifi
172 $(INSTALL_DATA
) .
/files
/lib
/wifi
/madwifi.sh
$(1)/lib
/wifi
173 $(INSTALL_DIR
) $(1)/usr
/sbin
174 $(CP
) $(PKG_BUILD_DIR
)/tools
/{madwifi_multi
,80211stats
,athchans
,athctrl
,athkey
,athstats
,wlanconfig
} $(1)/usr
/sbin
/
177 define KernelPackage
/madwifi-karma
/install
178 $(INSTALL_DIR
) $(1)/lib
/wifi
179 $(INSTALL_DATA
) .
/files
/lib
/wifi
/madwifi.sh
$(1)/lib
/wifi
180 $(INSTALL_DIR
) $(1)/usr
/sbin
181 $(CP
) $(PKG_BUILD_DIR
)/tools
/{madwifi_multi
,80211stats
,athchans
,athctrl
,athkey
,athstats
,wlanconfig
} $(1)/usr
/sbin
/
184 $(eval
$(call KernelPackage
,madwifi
))
185 $(eval
$(call KernelPackage
,madwifi-karma
))