mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-19 06:25:55 +02:00
madwifi: add 0.9.4 madwifi as a menuconfig option, as requested in some mails/tickets
untested, does not work with 2.6.26 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12047 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
76c7f83e59
commit
0270f3b748
@ -5,13 +5,25 @@ config MADWIFI_DEBUG
|
|||||||
depends on EXPERIMENTAL && PACKAGE_kmod-madwifi
|
depends on EXPERIMENTAL && PACKAGE_kmod-madwifi
|
||||||
default n
|
default n
|
||||||
|
|
||||||
config MADWIFI_TESTING
|
choice
|
||||||
bool "Use the testing version of MadWiFi"
|
prompt "Madwifi version"
|
||||||
depends on PACKAGE_kmod-madwifi
|
depends on PACKAGE_kmod-madwifi
|
||||||
default n
|
default MADWIFI_STABLE
|
||||||
help
|
help
|
||||||
Use the testing version of MadWiFi, which is newer, but also less tested
|
This option allows you to select the version of MadiWifi to be built.
|
||||||
May contain unexpected bugs :)
|
|
||||||
|
config MADWIFI_STABLE
|
||||||
|
bool "Use the OpenWrt stable version of madwifi"
|
||||||
|
|
||||||
|
config MADWIFI_TESTING
|
||||||
|
depends BROKEN
|
||||||
|
bool "Use the OpenWrt testing version of madwifi"
|
||||||
|
|
||||||
|
config MADWIFI_UPSTREAM
|
||||||
|
depends !LINUX_2_6_26
|
||||||
|
bool "Use the upstream release version 0.9.4"
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "Rate control algorithm selection"
|
prompt "Rate control algorithm selection"
|
||||||
|
@ -10,20 +10,34 @@ include $(TOPDIR)/rules.mk
|
|||||||
include $(INCLUDE_DIR)/kernel.mk
|
include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=madwifi
|
PKG_NAME:=madwifi
|
||||||
PKG_REV:=$(if $(CONFIG_MADWIFI_TESTING),3776,3314)
|
|
||||||
PKG_VERSION:=r$(PKG_REV)
|
ifneq ($(CONFIG_MADWIFI_UPSTREAM),)
|
||||||
|
PKG_VERSION:=0.9.4
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=madwifi-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_SOURCE_URL:=http://downloads.sourceforge.net/madwifi/
|
||||||
|
PKG_MD5SUM:=399d20de8d855a59f20058857c2178ad
|
||||||
|
|
||||||
|
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/madwifi-$(PKG_VERSION)
|
||||||
|
|
||||||
|
PATCH_DIR=./patches-upstream
|
||||||
|
else
|
||||||
# PKG_BRANCH:=madwifi-dfs
|
# PKG_BRANCH:=madwifi-dfs
|
||||||
PKG_RELEASE:=1
|
PKG_REV:=$(if $(CONFIG_MADWIFI_TESTING),3776,3314)
|
||||||
|
PKG_VERSION:=r$(PKG_REV)
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=svn
|
PKG_SOURCE_PROTO:=svn
|
||||||
PKG_SOURCE_VERSION:=$(PKG_REV)
|
PKG_SOURCE_VERSION:=$(PKG_REV)
|
||||||
PKG_SOURCE_SUBDIR:=$(if $(PKG_BRANCH),$(PKG_BRANCH),madwifi-trunk)-$(PKG_VERSION)
|
PKG_SOURCE_SUBDIR:=$(if $(PKG_BRANCH),$(PKG_BRANCH),madwifi-trunk)-$(PKG_VERSION)
|
||||||
PKG_SOURCE_URL:=http://svn.madwifi.org/madwifi/$(if $(PKG_BRANCH),branches/$(PKG_BRANCH),trunk)
|
PKG_SOURCE_URL:=http://svn.madwifi.org/madwifi/$(if $(PKG_BRANCH),branches/$(PKG_BRANCH),trunk)
|
||||||
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
|
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
|
||||||
|
|
||||||
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(if $(PKG_BRANCH),$(PKG_BRANCH),madwifi-trunk)-$(PKG_VERSION)
|
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(if $(PKG_BRANCH),$(PKG_BRANCH),madwifi-trunk)-$(PKG_VERSION)
|
||||||
|
|
||||||
PATCH_DIR=$(if $(CONFIG_MADWIFI_TESTING),./patches-testing,./patches)
|
PATCH_DIR=$(if $(CONFIG_MADWIFI_TESTING),./patches-testing,./patches)
|
||||||
|
endif
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
@ -120,11 +134,13 @@ ifeq ($(findstring PCI,$(BUS)),PCI)
|
|||||||
MADWIFI_AUTOLOAD+= ath_pci
|
MADWIFI_AUTOLOAD+= ath_pci
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MADWIFI_APPLETS:=80211stats,athchans,athctrl,athkey,athstats,wlanconfig,$(if $(CONFIG_MADWIFI_TESTING),ath_info/)ath_info
|
MADWIFI_APPLETS:=80211stats athchans athctrl athkey athstats wlanconfig $(if $(CONFIG_MADWIFI_TESTING),ath_info/)ath_info
|
||||||
ifdef CONFIG_MADWIFI_DEBUG
|
ifdef CONFIG_MADWIFI_DEBUG
|
||||||
MADWIFI_APPLETS:=$(strip $(MADWIFI_APPLETS)),athdebug,80211debug
|
MADWIFI_APPLETS += athdebug 80211debug
|
||||||
|
endif
|
||||||
|
ifndef CONFIG_MADWIFI_UPSTREAM
|
||||||
|
MADWIFI_APPLETS += madwifi_multi
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/madwifi
|
define KernelPackage/madwifi
|
||||||
SUBMENU:=Wireless Drivers
|
SUBMENU:=Wireless Drivers
|
||||||
@ -164,15 +180,23 @@ endif
|
|||||||
MAKE_VARS:= \
|
MAKE_VARS:= \
|
||||||
COPTS="-DCONFIG_ATHEROS_RATE_DEFAULT='\"$(RATE_CONTROL)\"' -DATH_REVERSE_ENGINEERING=1" \
|
COPTS="-DCONFIG_ATHEROS_RATE_DEFAULT='\"$(RATE_CONTROL)\"' -DATH_REVERSE_ENGINEERING=1" \
|
||||||
|
|
||||||
HALFILE:=$(lastword $(sort $(wildcard ./ath_hal-*.tgz)))
|
ifeq ($(CONFIG_MADWIFI_UPSTREAM),)
|
||||||
|
HALFILE:=$(lastword $(sort $(wildcard ./ath_hal-*.tgz)))
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq ($(HALFILE),)
|
ifneq ($(HALFILE),)
|
||||||
define Build/Prepare
|
define Build/Prepare/HAL
|
||||||
$(call Build/Prepare/Default)
|
|
||||||
rm -rf $(PKG_BUILD_DIR)/tmp
|
rm -rf $(PKG_BUILD_DIR)/tmp
|
||||||
mkdir -p $(PKG_BUILD_DIR)/tmp
|
mkdir -p $(PKG_BUILD_DIR)/tmp
|
||||||
tar xvzf $(HALFILE) -C $(PKG_BUILD_DIR)/tmp
|
tar xvzf $(HALFILE) -C $(PKG_BUILD_DIR)/tmp
|
||||||
$(CP) $(PKG_BUILD_DIR)/tmp/ath_hal*/* $(PKG_BUILD_DIR)/hal/
|
$(CP) $(PKG_BUILD_DIR)/tmp/ath_hal*/* $(PKG_BUILD_DIR)/hal/
|
||||||
rm -rf $(PKG_BUILD_DIR)/tmp
|
rm -rf $(PKG_BUILD_DIR)/tmp
|
||||||
|
endef
|
||||||
|
endif
|
||||||
|
|
||||||
|
define Build/Prepare
|
||||||
|
$(call Build/Prepare/Default)
|
||||||
|
$(call Build/Prepare/HAL)
|
||||||
# patch cflags
|
# patch cflags
|
||||||
$(SED) 's, -E[LB],,' \
|
$(SED) 's, -E[LB],,' \
|
||||||
-e 's, -mips2,,' \
|
-e 's, -mips2,,' \
|
||||||
@ -180,8 +204,7 @@ ifneq ($(HALFILE),)
|
|||||||
$(PKG_BUILD_DIR)/hal/public/*.inc
|
$(PKG_BUILD_DIR)/hal/public/*.inc
|
||||||
$(SED) 's,march=armv4,march=armv5te,' \
|
$(SED) 's,march=armv4,march=armv5te,' \
|
||||||
$(PKG_BUILD_DIR)/hal/public/xscale*.inc
|
$(PKG_BUILD_DIR)/hal/public/xscale*.inc
|
||||||
endef
|
endef
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(findstring AHB,$(BUS)),AHB)
|
ifeq ($(findstring AHB,$(BUS)),AHB)
|
||||||
define Build/Compile/ahb
|
define Build/Compile/ahb
|
||||||
@ -216,7 +239,7 @@ endef
|
|||||||
define KernelPackage/madwifi/install
|
define KernelPackage/madwifi/install
|
||||||
$(INSTALL_DIR) $(1)/usr/sbin
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
$(CP) ./files/* $(1)/
|
$(CP) ./files/* $(1)/
|
||||||
$(CP) $(PKG_BUILD_DIR)/tools/{madwifi_multi,$(MADWIFI_APPLETS)} $(1)/usr/sbin/
|
$(CP) $(foreach applet,$(MADWIFI_APPLETS),$(PKG_BUILD_DIR)/tools/$(applet)) $(1)/usr/sbin/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call KernelPackage,madwifi))
|
$(eval $(call KernelPackage,madwifi))
|
||||||
|
13
package/madwifi/patches-upstream/104-autocreate_none.patch
Normal file
13
package/madwifi/patches-upstream/104-autocreate_none.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: madwifi-0.9.4/ath/if_ath.c
|
||||||
|
===================================================================
|
||||||
|
--- madwifi-0.9.4.old/ath/if_ath.c 2008-02-13 06:13:10.000000000 +0100
|
||||||
|
+++ madwifi-0.9.4/ath/if_ath.c 2008-05-06 10:25:15.000000000 +0200
|
||||||
|
@@ -404,7 +404,7 @@
|
||||||
|
struct ath_hal *ah;
|
||||||
|
HAL_STATUS status;
|
||||||
|
int error = 0, i;
|
||||||
|
- int autocreatemode = IEEE80211_M_STA;
|
||||||
|
+ int autocreatemode = -1;
|
||||||
|
u_int8_t csz;
|
||||||
|
|
||||||
|
sc->devid = devid;
|
14
package/madwifi/patches-upstream/111-minstrel_crash.patch
Normal file
14
package/madwifi/patches-upstream/111-minstrel_crash.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
Index: madwifi-0.9.4/ath_rate/minstrel/minstrel.c
|
||||||
|
===================================================================
|
||||||
|
--- madwifi-0.9.4.old/ath_rate/minstrel/minstrel.c 2007-12-12 05:11:07.000000000 +0100
|
||||||
|
+++ madwifi-0.9.4/ath_rate/minstrel/minstrel.c 2008-07-24 15:15:41.000000000 +0200
|
||||||
|
@@ -394,6 +394,9 @@
|
||||||
|
int rc1, rc2, rc3; /* Index into the rate table, so for example, it is 0..11 */
|
||||||
|
int rixc1, rixc2, rixc3; /* The actual bit rate used */
|
||||||
|
|
||||||
|
+ if (sn->num_rates <= 0)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
if (sn->is_sampling) {
|
||||||
|
sn->is_sampling = 0;
|
||||||
|
if (sn->rs_sample_rate_slower)
|
Loading…
Reference in New Issue
Block a user