summaryrefslogtreecommitdiff
path: root/package/madwifi/patches
diff options
context:
space:
mode:
Diffstat (limited to 'package/madwifi/patches')
-rw-r--r--package/madwifi/patches/100-kernel_cflags.patch28
-rw-r--r--package/madwifi/patches/102-multicall_binary.patch83
-rw-r--r--package/madwifi/patches/103-disable_rfkill.patch9
-rw-r--r--package/madwifi/patches/104-autocreate_none.patch9
-rw-r--r--package/madwifi/patches/105-ratectl_attach.patch7
-rw-r--r--package/madwifi/patches/110-init_fix_PR_914.patch9
-rw-r--r--package/madwifi/patches/111-minstrel_crash.patch8
-rw-r--r--package/madwifi/patches/112-keycache_PR_962.patch23
-rw-r--r--package/madwifi/patches/113-no_ibss_pwrsave.patch7
-rw-r--r--package/madwifi/patches/116-adhoc_beacon_PR_1033.patch23
-rw-r--r--package/madwifi/patches/117-no_tpc.patch7
-rw-r--r--package/madwifi/patches/118-txstop_workaround.patch22
-rw-r--r--package/madwifi/patches/119-minstrel_rates.patch7
-rw-r--r--package/madwifi/patches/120-soc_fix.patch7
-rw-r--r--package/madwifi/patches/121-ibss_hostap.patch59
-rw-r--r--package/madwifi/patches/122-replayfail_workaround.patch7
-rw-r--r--package/madwifi/patches/123-ccmp_checks.patch40
-rw-r--r--package/madwifi/patches/200-no_debug.patch73
-rw-r--r--package/madwifi/patches/300-napi_polling.patch61
-rw-r--r--package/madwifi/patches/301-tx_locking.patch25
-rw-r--r--package/madwifi/patches/305-pureg_fix.patch54
-rw-r--r--package/madwifi/patches/309-micfail_detect.patch74
-rw-r--r--package/madwifi/patches/310-erp_beacon_check.patch7
23 files changed, 355 insertions, 294 deletions
diff --git a/package/madwifi/patches/100-kernel_cflags.patch b/package/madwifi/patches/100-kernel_cflags.patch
index ffb600c7a5..10c7280486 100644
--- a/package/madwifi/patches/100-kernel_cflags.patch
+++ b/package/madwifi/patches/100-kernel_cflags.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/hal/public/mips-be-elf.inc madwifi-ng-r2377-20070526.dev/hal/public/mips-be-elf.inc
---- madwifi-ng-r2377-20070526.old/hal/public/mips-be-elf.inc 2006-05-27 04:48:16.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/hal/public/mips-be-elf.inc 2007-05-26 18:51:08.033866208 +0200
+Index: madwifi-ng-r2420-20070602/hal/public/mips-be-elf.inc
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/hal/public/mips-be-elf.inc 2007-06-04 13:21:53.676816552 +0200
++++ madwifi-ng-r2420-20070602/hal/public/mips-be-elf.inc 2007-06-04 13:21:53.760803784 +0200
@@ -71,5 +71,5 @@
LDOPTS= -EB
@@ -8,9 +9,10 @@ diff -urN madwifi-ng-r2377-20070526.old/hal/public/mips-be-elf.inc madwifi-ng-r2
-COPTS+= -G 0 -EB -mno-abicalls -fno-pic -mips2 -Wa,--trap \
+COPTS+= -G 0 -mno-abicalls -fno-pic -mips32 -Wa,--trap \
-fno-strict-aliasing -fno-common -fomit-frame-pointer -mlong-calls
-diff -urN madwifi-ng-r2377-20070526.old/hal/public/mips-le-elf.inc madwifi-ng-r2377-20070526.dev/hal/public/mips-le-elf.inc
---- madwifi-ng-r2377-20070526.old/hal/public/mips-le-elf.inc 2006-05-27 04:48:16.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/hal/public/mips-le-elf.inc 2007-05-26 18:51:08.033866208 +0200
+Index: madwifi-ng-r2420-20070602/hal/public/mips-le-elf.inc
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/hal/public/mips-le-elf.inc 2007-06-04 13:21:53.681815792 +0200
++++ madwifi-ng-r2420-20070602/hal/public/mips-le-elf.inc 2007-06-04 13:21:53.760803784 +0200
@@ -68,5 +68,5 @@
LDOPTS= -EL
@@ -18,9 +20,10 @@ diff -urN madwifi-ng-r2377-20070526.old/hal/public/mips-le-elf.inc madwifi-ng-r2
-COPTS+= -G 0 -EL -mno-abicalls -fno-pic -mips2 -Wa,--trap \
+COPTS+= -G 0 -mno-abicalls -fno-pic -mips32 -Wa,--trap \
-fno-strict-aliasing -fno-common -fomit-frame-pointer -mlong-calls
-diff -urN madwifi-ng-r2377-20070526.old/hal/public/xscale-be-elf.inc madwifi-ng-r2377-20070526.dev/hal/public/xscale-be-elf.inc
---- madwifi-ng-r2377-20070526.old/hal/public/xscale-be-elf.inc 2006-09-14 08:21:22.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/hal/public/xscale-be-elf.inc 2007-05-26 18:51:08.034866056 +0200
+Index: madwifi-ng-r2420-20070602/hal/public/xscale-be-elf.inc
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/hal/public/xscale-be-elf.inc 2007-06-04 13:21:53.688814728 +0200
++++ madwifi-ng-r2420-20070602/hal/public/xscale-be-elf.inc 2007-06-04 13:21:53.760803784 +0200
@@ -77,5 +77,5 @@
LDOPTS= -EB
@@ -28,9 +31,10 @@ diff -urN madwifi-ng-r2377-20070526.old/hal/public/xscale-be-elf.inc madwifi-ng-
-COPTS+= -march=armv4 -mbig-endian -fno-strict-aliasing -fno-common -mapcs-32 \
+COPTS+= -march=armv5te -mbig-endian -fno-strict-aliasing -fno-common \
-mtune=xscale -mshort-load-bytes
-diff -urN madwifi-ng-r2377-20070526.old/Makefile madwifi-ng-r2377-20070526.dev/Makefile
---- madwifi-ng-r2377-20070526.old/Makefile 2007-05-26 00:31:56.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/Makefile 2007-05-26 18:51:08.034866056 +0200
+Index: madwifi-ng-r2420-20070602/Makefile
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/Makefile 2007-06-04 13:21:53.694813816 +0200
++++ madwifi-ng-r2420-20070602/Makefile 2007-06-04 13:21:53.760803784 +0200
@@ -56,7 +56,7 @@
all: modules tools
diff --git a/package/madwifi/patches/102-multicall_binary.patch b/package/madwifi/patches/102-multicall_binary.patch
index 2b3530a469..31dec0f4e4 100644
--- a/package/madwifi/patches/102-multicall_binary.patch
+++ b/package/madwifi/patches/102-multicall_binary.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/tools/80211debug.c madwifi-ng-r2377-20070526.dev/tools/80211debug.c
---- madwifi-ng-r2377-20070526.old/tools/80211debug.c 2007-05-24 23:21:08.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/80211debug.c 2007-05-26 18:51:08.119853136 +0200
+Index: madwifi-ng-r2420-20070602/tools/80211debug.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/80211debug.c 2007-06-04 13:21:53.599828256 +0200
++++ madwifi-ng-r2420-20070602/tools/80211debug.c 2007-06-04 13:21:53.990768824 +0200
@@ -49,6 +49,10 @@
#include <getopt.h>
#include <err.h>
@@ -32,9 +33,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/80211debug.c madwifi-ng-r2377-2007
const char *ifname = "ath0";
const char *cp, *tp;
const char *sep;
-diff -urN madwifi-ng-r2377-20070526.old/tools/80211stats.c madwifi-ng-r2377-20070526.dev/tools/80211stats.c
---- madwifi-ng-r2377-20070526.old/tools/80211stats.c 2007-02-07 04:18:49.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/80211stats.c 2007-05-26 18:51:08.119853136 +0200
+Index: madwifi-ng-r2420-20070602/tools/80211stats.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/80211stats.c 2007-06-04 13:21:53.607827040 +0200
++++ madwifi-ng-r2420-20070602/tools/80211stats.c 2007-06-04 13:21:53.991768672 +0200
@@ -60,6 +60,10 @@
#include "net80211/ieee80211_crypto.h"
#include "net80211/ieee80211_ioctl.h"
@@ -66,9 +68,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/80211stats.c madwifi-ng-r2377-2007
int c, len;
struct ieee80211req_sta_info *si;
u_int8_t buf[24*1024], *cp;
-diff -urN madwifi-ng-r2377-20070526.old/tools/athchans.c madwifi-ng-r2377-20070526.dev/tools/athchans.c
---- madwifi-ng-r2377-20070526.old/tools/athchans.c 2007-02-07 04:18:49.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/athchans.c 2007-05-26 18:51:08.119853136 +0200
+Index: madwifi-ng-r2420-20070602/tools/athchans.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/athchans.c 2007-06-04 13:21:53.613826128 +0200
++++ madwifi-ng-r2420-20070602/tools/athchans.c 2007-06-04 13:21:53.991768672 +0200
@@ -59,6 +59,10 @@
#include "net80211/ieee80211_crypto.h"
#include "net80211/ieee80211_ioctl.h"
@@ -80,7 +83,7 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athchans.c madwifi-ng-r2377-200705
static int s = -1;
const char *progname;
-@@ -136,9 +140,20 @@
+@@ -138,9 +142,20 @@
}
#define MAXCHAN ((int)(sizeof(struct ieee80211req_chanlist) * NBBY))
@@ -101,9 +104,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athchans.c madwifi-ng-r2377-200705
const char *ifname = "wifi0";
struct ieee80211req_chanlist chanlist;
int c;
-diff -urN madwifi-ng-r2377-20070526.old/tools/athctrl.c madwifi-ng-r2377-20070526.dev/tools/athctrl.c
---- madwifi-ng-r2377-20070526.old/tools/athctrl.c 2006-02-03 13:03:03.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/athctrl.c 2007-05-26 18:51:08.120852984 +0200
+Index: madwifi-ng-r2420-20070602/tools/athctrl.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/athctrl.c 2007-06-04 13:21:53.618825368 +0200
++++ madwifi-ng-r2420-20070602/tools/athctrl.c 2007-06-04 13:21:53.991768672 +0200
@@ -53,6 +53,10 @@
#include <net/if.h>
@@ -116,7 +120,7 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athctrl.c madwifi-ng-r2377-2007052
setsysctrl(const char *dev, const char *control , u_long value)
{
@@ -87,9 +91,19 @@
- exit(1);
+ exit(1);
}
+#ifdef DOMULTI
@@ -135,9 +139,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athctrl.c madwifi-ng-r2377-2007052
char device[IFNAMSIZ + 1];
int distance = -1;
int c;
-diff -urN madwifi-ng-r2377-20070526.old/tools/athdebug.c madwifi-ng-r2377-20070526.dev/tools/athdebug.c
---- madwifi-ng-r2377-20070526.old/tools/athdebug.c 2007-05-24 23:21:08.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/athdebug.c 2007-05-26 18:51:08.120852984 +0200
+Index: madwifi-ng-r2420-20070602/tools/athdebug.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/athdebug.c 2007-06-04 13:21:53.624824456 +0200
++++ madwifi-ng-r2420-20070602/tools/athdebug.c 2007-06-04 13:21:53.991768672 +0200
@@ -52,6 +52,10 @@
#include <getopt.h>
#include <err.h>
@@ -170,9 +175,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athdebug.c madwifi-ng-r2377-200705
#ifdef __linux__
const char *ifname = "wifi0";
#else
-diff -urN madwifi-ng-r2377-20070526.old/tools/athkey.c madwifi-ng-r2377-20070526.dev/tools/athkey.c
---- madwifi-ng-r2377-20070526.old/tools/athkey.c 2007-02-07 04:18:49.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/athkey.c 2007-05-26 18:51:08.121852832 +0200
+Index: madwifi-ng-r2420-20070602/tools/athkey.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/athkey.c 2007-06-04 13:21:53.630823544 +0200
++++ madwifi-ng-r2420-20070602/tools/athkey.c 2007-06-04 13:21:54.000767304 +0200
@@ -59,6 +59,10 @@
#include "net80211/ieee80211_crypto.h"
#include "net80211/ieee80211_ioctl.h"
@@ -184,7 +190,7 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athkey.c madwifi-ng-r2377-20070526
static int s = -1;
const char *progname;
-@@ -209,9 +213,19 @@
+@@ -211,9 +215,19 @@
exit(-1);
}
@@ -204,9 +210,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athkey.c madwifi-ng-r2377-20070526
const char *ifname = "wifi0";
struct ieee80211req_key setkey;
struct ieee80211req_del_key delkey;
-diff -urN madwifi-ng-r2377-20070526.old/tools/athstats.c madwifi-ng-r2377-20070526.dev/tools/athstats.c
---- madwifi-ng-r2377-20070526.old/tools/athstats.c 2007-03-27 03:45:42.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/athstats.c 2007-05-26 18:51:08.121852832 +0200
+Index: madwifi-ng-r2420-20070602/tools/athstats.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/athstats.c 2007-06-04 13:21:53.635822784 +0200
++++ madwifi-ng-r2420-20070602/tools/athstats.c 2007-06-04 13:21:54.000767304 +0200
@@ -63,6 +63,10 @@
#include "wireless_copy.h"
#include "if_athioctl.h"
@@ -239,9 +246,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/athstats.c madwifi-ng-r2377-200705
#ifdef __linux__
const char *ifname = "wifi0";
#else
-diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.c madwifi-ng-r2377-20070526.dev/tools/do_multi.c
---- madwifi-ng-r2377-20070526.old/tools/do_multi.c 1970-01-01 01:00:00.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/do_multi.c 2007-05-26 18:51:08.121852832 +0200
+Index: madwifi-ng-r2420-20070602/tools/do_multi.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ madwifi-ng-r2420-20070602/tools/do_multi.c 2007-06-04 13:21:54.000767304 +0200
@@ -0,0 +1,30 @@
+#include <string.h>
+#include "do_multi.h"
@@ -273,9 +281,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.c madwifi-ng-r2377-200705
+
+ return ret;
+}
-diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.h madwifi-ng-r2377-20070526.dev/tools/do_multi.h
---- madwifi-ng-r2377-20070526.old/tools/do_multi.h 1970-01-01 01:00:00.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/tools/do_multi.h 2007-05-26 18:51:08.122852680 +0200
+Index: madwifi-ng-r2420-20070602/tools/do_multi.h
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ madwifi-ng-r2420-20070602/tools/do_multi.h 2007-06-04 13:21:54.000767304 +0200
@@ -0,0 +1,9 @@
+
+int a80211debug_init(int argc, char *argv[]);
@@ -286,9 +295,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.h madwifi-ng-r2377-200705
+int athkey_init(int argc, char *argv[]);
+int athstats_init(int argc, char *argv[]);
+int wlanconfig_init(int argc, char *argv[]);
-diff -urN madwifi-ng-r2377-20070526.old/tools/Makefile madwifi-ng-r2377-20070526.dev/tools/Makefile
---- madwifi-ng-r2377-20070526.old/tools/Makefile 2007-03-27 03:45:42.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/Makefile 2007-05-26 18:51:08.122852680 +0200
+Index: madwifi-ng-r2420-20070602/tools/Makefile
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/Makefile 2007-06-04 13:21:53.649820656 +0200
++++ madwifi-ng-r2420-20070602/tools/Makefile 2007-06-04 13:21:54.001767152 +0200
@@ -49,6 +49,12 @@
ALL= athstats 80211stats athkey athchans athctrl \
@@ -333,9 +343,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/Makefile madwifi-ng-r2377-20070526
athstats: athstats.c
$(CC) -o athstats $(ALL_CFLAGS) -I$(TOP)/ath $(LDFLAGS) athstats.c
80211stats: 80211stats.c
-diff -urN madwifi-ng-r2377-20070526.old/tools/wlanconfig.c madwifi-ng-r2377-20070526.dev/tools/wlanconfig.c
---- madwifi-ng-r2377-20070526.old/tools/wlanconfig.c 2007-04-29 19:35:25.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/wlanconfig.c 2007-05-26 18:51:08.123852528 +0200
+Index: madwifi-ng-r2420-20070602/tools/wlanconfig.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/wlanconfig.c 2007-06-04 13:21:53.656819592 +0200
++++ madwifi-ng-r2420-20070602/tools/wlanconfig.c 2007-06-04 13:21:54.001767152 +0200
@@ -62,6 +62,10 @@
#include "net80211/ieee80211_crypto.h"
#include "net80211/ieee80211_ioctl.h"
diff --git a/package/madwifi/patches/103-disable_rfkill.patch b/package/madwifi/patches/103-disable_rfkill.patch
index 93c4cc06ed..5a35736fd2 100644
--- a/package/madwifi/patches/103-disable_rfkill.patch
+++ b/package/madwifi/patches/103-disable_rfkill.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-25 22:03:27.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.212839000 +0200
-@@ -257,7 +257,7 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:53.574832056 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:54.287723680 +0200
+@@ -269,7 +269,7 @@
static int ath_xchanmode = AH_TRUE; /* enable extended channels */
static char *autocreate = NULL;
static char *ratectl = DEF_RATE_CTL;
diff --git a/package/madwifi/patches/104-autocreate_none.patch b/package/madwifi/patches/104-autocreate_none.patch
index f7e0633e8b..b2724e727e 100644
--- a/package/madwifi/patches/104-autocreate_none.patch
+++ b/package/madwifi/patches/104-autocreate_none.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:08.298825928 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.306824712 +0200
-@@ -410,7 +410,7 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:54.287723680 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:54.479694496 +0200
+@@ -424,7 +424,7 @@
HAL_STATUS status;
int error = 0;
unsigned int i;
diff --git a/package/madwifi/patches/105-ratectl_attach.patch b/package/madwifi/patches/105-ratectl_attach.patch
index f0910b5209..577bbcd96d 100644
--- a/package/madwifi/patches/105-ratectl_attach.patch
+++ b/package/madwifi/patches/105-ratectl_attach.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_rate.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_rate.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_rate.c 2007-03-28 09:07:07.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_rate.c 2007-05-26 18:51:08.398810728 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_rate.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_rate.c 2007-06-04 13:21:53.530838744 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_rate.c 2007-06-04 13:21:54.814643576 +0200
@@ -100,8 +100,18 @@
ieee80211_load_module(buf);
diff --git a/package/madwifi/patches/110-init_fix_PR_914.patch b/package/madwifi/patches/110-init_fix_PR_914.patch
index c32df2220f..4c6a16de56 100644
--- a/package/madwifi/patches/110-init_fix_PR_914.patch
+++ b/package/madwifi/patches/110-init_fix_PR_914.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:08.393811488 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.485797504 +0200
-@@ -1959,7 +1959,10 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:54.479694496 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:55.006614392 +0200
+@@ -1980,7 +1980,10 @@
ath_draintxq(sc);
if (!sc->sc_invalid) {
ath_stoprecv(sc);
diff --git a/package/madwifi/patches/111-minstrel_crash.patch b/package/madwifi/patches/111-minstrel_crash.patch
index cdf2fffe50..24ca406999 100644
--- a/package/madwifi/patches/111-minstrel_crash.patch
+++ b/package/madwifi/patches/111-minstrel_crash.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c madwifi-ng-r2377-20070526.dev/ath_rate/minstrel/minstrel.c
---- madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c 2007-05-21 19:33:26.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath_rate/minstrel/minstrel.c 2007-05-26 18:51:08.575783824 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:53.488845128 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:55.198585208 +0200
@@ -388,6 +388,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 */
@@ -11,4 +12,3 @@ diff -urN madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c madwifi-ng-
if (sn->is_sampling) {
rc1 = sn->max_tp_rate;
sn->is_sampling = 0;
-
diff --git a/package/madwifi/patches/112-keycache_PR_962.patch b/package/madwifi/patches/112-keycache_PR_962.patch
index fd0be587ef..251a233f5b 100644
--- a/package/madwifi/patches/112-keycache_PR_962.patch
+++ b/package/madwifi/patches/112-keycache_PR_962.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:08.569784736 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.661770752 +0200
-@@ -5672,7 +5672,8 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:55.006614392 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:55.390556024 +0200
+@@ -5698,7 +5698,8 @@
* frame; it'll be dropped where it's not wanted.
*/
if (rs->rs_keyix != HAL_RXKEYIX_INVALID &&
@@ -11,9 +12,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
struct ath_node *an;
/*
* Fast path: node is present in the key map;
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c 2007-05-21 17:53:39.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.c 2007-05-26 18:51:08.663770448 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_node.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_node.c 2007-06-04 13:21:53.459849536 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_node.c 2007-06-04 13:21:55.391555872 +0200
@@ -1269,8 +1269,6 @@
IEEE80211_NODE_TABLE_UNLOCK_IRQ(nt);
@@ -44,9 +46,10 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c madwifi-ng-r23
/*
* Return a reference to the appropriate node for sending
* a data frame. This handles node discovery in adhoc networks.
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.h madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.h
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.h 2007-05-21 17:53:39.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.h 2007-05-26 18:51:08.664770296 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_node.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_node.h 2007-06-04 13:21:53.466848472 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_node.h 2007-06-04 13:21:55.392555720 +0200
@@ -323,6 +323,8 @@
*pni = NULL; /* guard against use */
}
diff --git a/package/madwifi/patches/113-no_ibss_pwrsave.patch b/package/madwifi/patches/113-no_ibss_pwrsave.patch
index b8dc3ce84d..f11be5693c 100644
--- a/package/madwifi/patches/113-no_ibss_pwrsave.patch
+++ b/package/madwifi/patches/113-no_ibss_pwrsave.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_scan.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_scan.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_scan.c 2007-05-17 03:01:29.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_scan.c 2007-05-26 18:51:08.754756616 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_scan.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_scan.c 2007-06-04 13:21:53.432853640 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_scan.c 2007-06-04 13:21:55.608522888 +0200
@@ -291,7 +291,8 @@
struct ieee80211com *ic = vap->iv_ic;
int delay;
diff --git a/package/madwifi/patches/116-adhoc_beacon_PR_1033.patch b/package/madwifi/patches/116-adhoc_beacon_PR_1033.patch
index 73ba122450..f9a13e634b 100644
--- a/package/madwifi/patches/116-adhoc_beacon_PR_1033.patch
+++ b/package/madwifi/patches/116-adhoc_beacon_PR_1033.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:08.747757680 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.841743392 +0200
-@@ -4373,16 +4373,31 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:55.390556024 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:55.808492488 +0200
+@@ -4394,16 +4394,31 @@
struct ieee80211com *ic = &sc->sc_ic;
struct ath_hal *ah = sc->sc_ah;
struct ieee80211_node *ni;
@@ -37,7 +38,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
/* XXX conditionalize multi-bss support? */
if (ic->ic_opmode == IEEE80211_M_HOSTAP) {
/*
-@@ -4396,20 +4411,61 @@
+@@ -4417,20 +4432,61 @@
if (sc->sc_stagbeacons)
intval /= ATH_BCBUF; /* for staggered beacons */
if ((sc->sc_nostabeacons) &&
@@ -108,7 +109,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
int dtimperiod, dtimcount;
int cfpperiod, cfpcount;
-@@ -4425,13 +4481,13 @@
+@@ -4446,13 +4502,13 @@
dtimcount = 0; /* XXX? */
cfpperiod = 1; /* NB: no PCF support yet */
cfpcount = 0;
@@ -125,7 +126,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
do {
nexttbtt += intval;
if (--dtimcount < 0) {
-@@ -4439,7 +4495,7 @@
+@@ -4460,7 +4516,7 @@
if (--cfpcount < 0)
cfpcount = cfpperiod - 1;
}
@@ -134,8 +135,8 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
#undef FUDGE
memset(&bs, 0, sizeof(bs));
bs.bs_intval = intval;
-@@ -4491,7 +4547,7 @@
- DPRINTF(sc, ATH_DEBUG_BEACON,
+@@ -4512,7 +4568,7 @@
+ DPRINTF(sc, ATH_DEBUG_BEACON,
"%s: tsf %llu tsf:tu %u intval %u nexttbtt %u dtim %u nextdtim %u bmiss %u sleep %u cfp:period %u maxdur %u next %u timoffset %u\n",
__func__,
- (unsigned long long) tsf, tsftu,
@@ -143,7 +144,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
bs.bs_intval,
bs.bs_nexttbtt,
bs.bs_dtimperiod,
-@@ -4510,7 +4566,7 @@
+@@ -4531,7 +4587,7 @@
ath_hal_intrset(ah, sc->sc_imask);
} else {
ath_hal_intrset(ah, 0);
@@ -152,7 +153,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
intval |= HAL_BEACON_RESET_TSF;
if (ic->ic_opmode == IEEE80211_M_IBSS) {
/*
-@@ -4547,8 +4603,40 @@
+@@ -4568,8 +4624,40 @@
if (ic->ic_opmode == IEEE80211_M_IBSS && sc->sc_hasveol)
ath_beacon_start_adhoc(sc, vap);
}
diff --git a/package/madwifi/patches/117-no_tpc.patch b/package/madwifi/patches/117-no_tpc.patch
index 96c581663a..e573b267d3 100644
--- a/package/madwifi/patches/117-no_tpc.patch
+++ b/package/madwifi/patches/117-no_tpc.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
---- madwifi.old/ath/if_ath.c 2007-06-01 16:44:25.170898128 +0200
-+++ madwifi.dev/ath/if_ath.c 2007-06-01 20:01:24.205131816 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:55.808492488 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:56.713354928 +0200
@@ -271,7 +271,7 @@
static char *ratectl = DEF_RATE_CTL;
static int rfkill = 0;
diff --git a/package/madwifi/patches/118-txstop_workaround.patch b/package/madwifi/patches/118-txstop_workaround.patch
index 9b381e1851..3133c41e69 100644
--- a/package/madwifi/patches/118-txstop_workaround.patch
+++ b/package/madwifi/patches/118-txstop_workaround.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:08.924730776 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:08.933729408 +0200
-@@ -2220,6 +2220,17 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:56.713354928 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:56.911324832 +0200
+@@ -2242,6 +2242,17 @@
txq->axq_link = &lastds->ds_link;
ath_hal_txstart(ah, txq->axq_qnum);
sc->sc_dev->trans_start = jiffies;
@@ -17,9 +18,9 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
+ }
+ }
}
- ATH_TXQ_UNLOCK(txq);
+ ATH_TXQ_UNLOCK_IRQ(txq);
-@@ -7262,6 +7273,7 @@
+@@ -7285,6 +7296,7 @@
__func__, ds);
#else
ds = bf->bf_desc; /* NB: last descriptor */
@@ -27,10 +28,11 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
#endif
ts = &bf->bf_dsstatus.ds_txstat;
status = ath_hal_txprocdesc(ah, ds, ts);
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_athvar.h madwifi-ng-r2377-20070526.dev/ath/if_athvar.h
---- madwifi-ng-r2377-20070526.old/ath/if_athvar.h 2007-05-25 04:38:02.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_athvar.h 2007-05-26 18:51:08.933729408 +0200
-@@ -685,6 +685,14 @@
+Index: madwifi-ng-r2420-20070602/ath/if_athvar.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_athvar.h 2007-06-04 13:21:53.369863216 +0200
++++ madwifi-ng-r2420-20070602/ath/if_athvar.h 2007-06-04 13:21:56.911324832 +0200
+@@ -686,6 +686,14 @@
u_int sc_slottimeconf; /* manual override for slottime */
int16_t sc_channoise; /* Measured noise of current channel (dBm) */
u_int64_t sc_tsf; /* TSF at last rx interrupt */
diff --git a/package/madwifi/patches/119-minstrel_rates.patch b/package/madwifi/patches/119-minstrel_rates.patch
index 605342739d..50cbb5a64b 100644
--- a/package/madwifi/patches/119-minstrel_rates.patch
+++ b/package/madwifi/patches/119-minstrel_rates.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/ath_rate/minstrel/minstrel.c madwifi.dev/ath_rate/minstrel/minstrel.c
---- madwifi.old/ath_rate/minstrel/minstrel.c 2007-06-01 16:44:25.137903000 +0200
-+++ madwifi.dev/ath_rate/minstrel/minstrel.c 2007-06-01 22:03:15.408659936 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:55.198585208 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:57.115293824 +0200
@@ -358,6 +358,8 @@
if (sn->rs_sampleColumn >= MINSTREL_COLUMNS)
sn->rs_sampleColumn = 0;
diff --git a/package/madwifi/patches/120-soc_fix.patch b/package/madwifi/patches/120-soc_fix.patch
index d808bfbfad..067dbfbb1c 100644
--- a/package/madwifi/patches/120-soc_fix.patch
+++ b/package/madwifi/patches/120-soc_fix.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/ath/if_ath_ahb.c madwifi.dev/ath/if_ath_ahb.c
---- madwifi.old/ath/if_ath_ahb.c 2007-05-30 03:41:18.000000000 +0200
-+++ madwifi.dev/ath/if_ath_ahb.c 2007-06-01 12:04:02.887273960 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_ath_ahb.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath_ahb.c 2007-06-04 13:21:53.320870664 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath_ahb.c 2007-06-04 13:21:57.306264792 +0200
@@ -275,11 +275,10 @@
diff --git a/package/madwifi/patches/121-ibss_hostap.patch b/package/madwifi/patches/121-ibss_hostap.patch
index a5a3ca99bc..24cbe98117 100644
--- a/package/madwifi/patches/121-ibss_hostap.patch
+++ b/package/madwifi/patches/121-ibss_hostap.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
---- madwifi.old/ath/if_ath.c 2007-06-01 12:22:06.641518272 +0200
-+++ madwifi.dev/ath/if_ath.c 2007-06-01 12:22:55.326117088 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:56.911324832 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:57.500235304 +0200
@@ -407,7 +407,6 @@
* and use the next two bits as the index of the VAP.
*/
@@ -9,7 +10,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
#define ATH_SET_VAP_BSSID(bssid, id) \
do { \
if (id) \
-@@ -1048,9 +1048,12 @@
+@@ -1048,9 +1047,12 @@
ic_opmode = opmode;
break;
case IEEE80211_M_IBSS:
@@ -25,7 +26,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
break;
case IEEE80211_M_AHDEMO:
case IEEE80211_M_MONITOR:
-@@ -1080,7 +1083,7 @@
+@@ -1080,7 +1082,7 @@
return NULL;
}
@@ -34,7 +35,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
printk(KERN_WARNING "too many virtual ap's (already got %d)\n", sc->sc_nvaps);
return NULL;
}
-@@ -1115,8 +1118,9 @@
+@@ -1115,8 +1117,9 @@
*/
if (opmode == IEEE80211_M_MONITOR)
dev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -46,7 +47,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
struct ieee80211vap *v;
unsigned int id_mask, id;
-@@ -1129,18 +1133,22 @@
+@@ -1129,18 +1132,22 @@
/* do a full search to mark all the allocated VAPs */
id_mask = 0;
@@ -73,7 +74,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
STAILQ_INIT(&avp->av_mcastq.axq_q);
ATH_TXQ_LOCK_INIT(&avp->av_mcastq);
if (opmode == IEEE80211_M_HOSTAP || opmode == IEEE80211_M_IBSS) {
-@@ -1150,33 +1158,14 @@
+@@ -1150,33 +1157,14 @@
*/
avp->av_bcbuf = STAILQ_FIRST(&sc->sc_bbuf);
STAILQ_REMOVE_HEAD(&sc->sc_bbuf, bf_list);
@@ -109,7 +110,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
/*
* Multiple VAPs are to transmit beacons and we
* have h/w support for TSF adjusting; enable use
-@@ -1286,7 +1275,9 @@
+@@ -1286,7 +1274,9 @@
sc->sc_stagbeacons = 0;
}
@@ -120,16 +121,16 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
sc->sc_nstavaps--;
sc->sc_nostabeacons = 0;
} else if (vap->iv_opmode == IEEE80211_M_MONITOR)
-@@ -3368,7 +3367,7 @@
- ((ic->ic_opmode == IEEE80211_M_HOSTAP) &&
- (ic->ic_protmode != IEEE80211_PROT_NONE)))
+@@ -3362,7 +3352,7 @@
+ sc->sc_opmode == HAL_M_IBSS || /* NB: AHDEMO too */
+ (sc->sc_nostabeacons) || sc->sc_scanning)
rfilt |= HAL_RX_FILTER_BEACON;
- if (sc->sc_nmonvaps > 0)
+ if ((sc->sc_nmonvaps > 0) || ((sc->sc_nvaps > 0) && (sc->sc_nibssvaps > 0)))
rfilt |= (HAL_RX_FILTER_CONTROL | HAL_RX_FILTER_BEACON |
HAL_RX_FILTER_PROBEREQ | HAL_RX_FILTER_PROM);
return rfilt;
-@@ -5809,12 +5801,20 @@
+@@ -5809,12 +5799,20 @@
type = ieee80211_input(ni, skb, rs->rs_rssi, rs->rs_tstamp);
ieee80211_unref_node(&ni);
} else {
@@ -152,9 +153,10 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
if (ni != NULL) {
struct ath_node *an = ATH_NODE(ni);
ieee80211_keyix_t keyix;
-diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
---- madwifi.old/ath/if_athvar.h 2007-06-01 12:22:06.642518120 +0200
-+++ madwifi.dev/ath/if_athvar.h 2007-06-01 12:21:54.640342728 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_athvar.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_athvar.h 2007-06-04 13:21:56.911324832 +0200
++++ madwifi-ng-r2420-20070602/ath/if_athvar.h 2007-06-04 13:21:57.500235304 +0200
@@ -199,7 +199,7 @@
#define ATH_RXBUF 40 /* number of RX buffers */
#define ATH_TXBUF 200 /* number of TX buffers */
@@ -172,9 +174,10 @@ diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
u_int8_t sc_nbcnvaps; /* # of vaps sending beacons */
u_int sc_fftxqmin; /* aggregation threshold */
HAL_INT sc_imask; /* interrupt mask copy */
-diff -ur madwifi.old/net80211/ieee80211_beacon.c madwifi.dev/net80211/ieee80211_beacon.c
---- madwifi.old/net80211/ieee80211_beacon.c 2007-06-01 12:22:06.642518120 +0200
-+++ madwifi.dev/net80211/ieee80211_beacon.c 2007-06-01 12:21:54.640342728 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_beacon.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_beacon.c 2007-06-04 13:21:53.286875832 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_beacon.c 2007-06-04 13:21:57.501235152 +0200
@@ -111,7 +111,7 @@
bo->bo_tim = frm;
@@ -184,10 +187,11 @@ diff -ur madwifi.old/net80211/ieee80211_beacon.c madwifi.dev/net80211/ieee80211_
*frm++ = IEEE80211_ELEMID_IBSSPARMS;
*frm++ = 2;
*frm++ = 0; *frm++ = 0; /* TODO: ATIM window */
-diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_input.c
---- madwifi.old/net80211/ieee80211_input.c 2007-06-01 12:22:06.645517664 +0200
-+++ madwifi.dev/net80211/ieee80211_input.c 2007-06-01 12:21:54.642342424 +0200
-@@ -2953,7 +2953,13 @@
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_input.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_input.c 2007-06-04 13:21:53.292874920 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_input.c 2007-06-04 13:21:57.502235000 +0200
+@@ -2939,7 +2939,13 @@
return;
}
if (ni == vap->iv_bss) {
@@ -202,7 +206,7 @@ diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_i
/*
* XXX Cannot tell if the sender is operating
* in ibss mode. But we need a new node to
-@@ -2962,12 +2968,13 @@
+@@ -2948,12 +2954,13 @@
*/
ni = ieee80211_fakeup_adhoc_node(vap,
wh->i_addr2);
@@ -217,9 +221,10 @@ diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_i
}
IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_INPUT, wh->i_addr2,
-diff -ur madwifi.old/net80211/ieee80211_node.c madwifi.dev/net80211/ieee80211_node.c
---- madwifi.old/net80211/ieee80211_node.c 2007-06-01 12:22:06.646517512 +0200
-+++ madwifi.dev/net80211/ieee80211_node.c 2007-06-01 12:21:54.644342120 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_node.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_node.c 2007-06-04 13:21:55.391555872 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_node.c 2007-06-04 13:21:57.503234848 +0200
@@ -1082,8 +1082,25 @@
IEEE80211_NODE_TABLE_LOCK_ASSERT(nt);
diff --git a/package/madwifi/patches/122-replayfail_workaround.patch b/package/madwifi/patches/122-replayfail_workaround.patch
index 49f1a13a8f..5931ec733b 100644
--- a/package/madwifi/patches/122-replayfail_workaround.patch
+++ b/package/madwifi/patches/122-replayfail_workaround.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/net80211/ieee80211_linux.c madwifi.dev/net80211/ieee80211_linux.c
---- madwifi.old/net80211/ieee80211_linux.c 2007-05-30 03:41:18.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_linux.c 2007-06-02 01:43:40.818092096 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_linux.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_linux.c 2007-06-04 13:21:53.255880544 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_linux.c 2007-06-04 13:21:57.745198064 +0200
@@ -285,6 +285,9 @@
k->wk_cipher->ic_name, k->wk_keyix,
(unsigned long long)rsc );
diff --git a/package/madwifi/patches/123-ccmp_checks.patch b/package/madwifi/patches/123-ccmp_checks.patch
index f549cd4e5e..8370d35796 100644
--- a/package/madwifi/patches/123-ccmp_checks.patch
+++ b/package/madwifi/patches/123-ccmp_checks.patch
@@ -1,7 +1,21 @@
-diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee80211_crypto_ccmp.c
---- madwifi.old/net80211/ieee80211_crypto_ccmp.c 2007-06-02 04:37:47.425966000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_ccmp.c 2007-06-02 18:38:27.675882768 +0200
-@@ -465,6 +465,9 @@
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_ccmp.c 2007-06-04 13:21:53.234883736 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c 2007-06-04 13:21:57.936169032 +0200
+@@ -118,6 +118,12 @@
+ ctx->cc_ic = vap->iv_ic;
+ ctx->cc_tfm = crypto_alloc_cipher("aes", 0,
+ CRYPTO_ALG_ASYNC);
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++ if (IS_ERR(ctx->cc_tfm))
++ ctx->cc_tfm = NULL;
++#endif
++
+ if (ctx->cc_tfm == NULL) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_CRYPTO,
+ "%s: unable to load kernel AES crypto support\n",
+@@ -465,6 +471,9 @@
uint8_t *mic, *pos;
u_int space;
@@ -11,7 +25,7 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee8
ctx->cc_vap->iv_stats.is_crypto_ccmp++;
skb = skb0;
-@@ -579,6 +582,9 @@
+@@ -579,6 +588,9 @@
uint8_t *pos, *mic;
u_int space;
@@ -21,19 +35,3 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee8
ctx->cc_vap->iv_stats.is_crypto_ccmp++;
skb = skb0;
-diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee80211_crypto_ccmp.c
---- madwifi.old/net80211/ieee80211_crypto_ccmp.c 2007-06-02 19:40:56.291006648 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_ccmp.c 2007-06-03 04:19:47.561334192 +0200
-@@ -118,6 +118,12 @@
- ctx->cc_ic = vap->iv_ic;
- ctx->cc_tfm = crypto_alloc_cipher("aes", 0,
- CRYPTO_ALG_ASYNC);
-+
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
-+ if (IS_ERR(ctx->cc_tfm))
-+ ctx->cc_tfm = NULL;
-+#endif
-+
- if (ctx->cc_tfm == NULL) {
- IEEE80211_DPRINTF(vap, IEEE80211_MSG_CRYPTO,
- "%s: unable to load kernel AES crypto support\n",
diff --git a/package/madwifi/patches/200-no_debug.patch b/package/madwifi/patches/200-no_debug.patch
index fda9d3e557..cecc266dac 100644
--- a/package/madwifi/patches/200-no_debug.patch
+++ b/package/madwifi/patches/200-no_debug.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:09.199688976 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:09.207687760 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:57.500235304 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:58.130139544 +0200
@@ -75,7 +75,7 @@
#include <net80211/if_llc.h>
#endif
@@ -10,7 +11,7 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
#include "net80211/if_athproto.h"
#include "if_athvar.h"
-@@ -368,7 +368,7 @@
+@@ -382,7 +382,7 @@
ath_keyprint(sc, __func__, ix, hk, mac); \
} while (0)
#else /* defined(AR_DEBUG) */
@@ -19,9 +20,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
#define DPRINTF(sc, _m, _fmt, ...)
#define KEYPRINTF(sc, k, ix, mac)
#endif /* defined(AR_DEBUG) */
-diff -urN madwifi-ng-r2377-20070526.old/ath_rate/amrr/amrr.c madwifi-ng-r2377-20070526.dev/ath_rate/amrr/amrr.c
---- madwifi-ng-r2377-20070526.old/ath_rate/amrr/amrr.c 2007-05-21 19:33:26.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath_rate/amrr/amrr.c 2007-05-26 18:51:09.208687608 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/amrr/amrr.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/amrr/amrr.c 2007-06-04 13:21:53.164894376 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/amrr/amrr.c 2007-06-04 13:21:58.131139392 +0200
@@ -69,7 +69,7 @@
#include "amrr.h"
@@ -31,9 +33,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath_rate/amrr/amrr.c madwifi-ng-r2377-20
#ifdef AMRR_DEBUG
#define DPRINTF(sc, _fmt, ...) do { \
if (sc->sc_debug & 0x10) \
-diff -urN madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c madwifi-ng-r2377-20070526.dev/ath_rate/minstrel/minstrel.c
---- madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c 2007-05-26 18:51:08.653771968 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath_rate/minstrel/minstrel.c 2007-05-26 18:51:09.208687608 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:57.115293824 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/minstrel/minstrel.c 2007-06-04 13:21:58.132139240 +0200
@@ -116,7 +116,7 @@
#include "minstrel.h"
@@ -43,9 +46,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath_rate/minstrel/minstrel.c madwifi-ng-
#ifdef MINSTREL_DEBUG
enum {
ATH_DEBUG_RATE = 0x00000010 /* rate control */
-diff -urN madwifi-ng-r2377-20070526.old/ath_rate/onoe/onoe.c madwifi-ng-r2377-20070526.dev/ath_rate/onoe/onoe.c
---- madwifi-ng-r2377-20070526.old/ath_rate/onoe/onoe.c 2007-05-21 19:33:26.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath_rate/onoe/onoe.c 2007-05-26 18:51:09.209687456 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/onoe/onoe.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/onoe/onoe.c 2007-06-04 13:21:53.176892552 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/onoe/onoe.c 2007-06-04 13:21:58.132139240 +0200
@@ -65,7 +65,7 @@
#include "onoe.h"
@@ -55,9 +59,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath_rate/onoe/onoe.c madwifi-ng-r2377-20
#ifdef ONOE_DEBUG
enum {
ATH_DEBUG_RATE = 0x00000010, /* rate control */
-diff -urN madwifi-ng-r2377-20070526.old/ath_rate/sample/sample.c madwifi-ng-r2377-20070526.dev/ath_rate/sample/sample.c
---- madwifi-ng-r2377-20070526.old/ath_rate/sample/sample.c 2007-05-21 19:33:26.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath_rate/sample/sample.c 2007-05-26 18:51:09.209687456 +0200
+Index: madwifi-ng-r2420-20070602/ath_rate/sample/sample.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath_rate/sample/sample.c 2007-06-04 13:21:53.183891488 +0200
++++ madwifi-ng-r2420-20070602/ath_rate/sample/sample.c 2007-06-04 13:21:58.133139088 +0200
@@ -67,7 +67,7 @@
#include "sample.h"
@@ -67,9 +72,10 @@ diff -urN madwifi-ng-r2377-20070526.old/ath_rate/sample/sample.c madwifi-ng-r237
#ifdef SAMPLE_DEBUG
enum {
ATH_DEBUG_NODE = 0x00080000, /* node management */
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c 2007-05-21 17:53:39.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.c 2007-05-26 18:51:09.210687304 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_proto.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_proto.c 2007-06-04 13:21:53.189890576 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_proto.c 2007-06-04 13:21:58.133139088 +0200
@@ -312,6 +312,7 @@
}
EXPORT_SYMBOL(ieee80211_print_essid);
@@ -86,9 +92,10 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c madwifi-ng-r2
int
ieee80211_fix_rate(struct ieee80211_node *ni, int flags)
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.h madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.h
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.h 2007-01-30 05:01:29.000000000 +0100
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.h 2007-05-26 18:51:09.211687152 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_proto.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_proto.h 2007-06-04 13:21:53.194889816 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_proto.h 2007-06-04 13:21:58.134138936 +0200
@@ -247,7 +247,11 @@
#endif
int ieee80211_new_state(struct ieee80211vap *, enum ieee80211_state, int);
@@ -101,9 +108,10 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.h madwifi-ng-r2
struct sk_buff *ieee80211_getcfframe(struct ieee80211vap *, int);
/*
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h madwifi-ng-r2377-20070526.dev/net80211/ieee80211_var.h
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h 2007-05-24 23:26:38.000000000 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_var.h 2007-05-26 18:51:09.211687152 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_var.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_var.h 2007-06-04 13:21:53.201888752 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_var.h 2007-06-04 13:21:58.134138936 +0200
@@ -35,8 +35,8 @@
#ifndef _NET80211_IEEE80211_VAR_H_
#define _NET80211_IEEE80211_VAR_H_
@@ -115,9 +123,10 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h madwifi-ng-r237
/* Definitions for IEEE 802.11 drivers. */
#include <net80211/ieee80211_linux.h>
-diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.c madwifi-ng-r2377-20070526.dev/tools/do_multi.c
---- madwifi-ng-r2377-20070526.old/tools/do_multi.c 2007-05-26 18:51:08.203840368 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/do_multi.c 2007-05-26 18:51:09.212687000 +0200
+Index: madwifi-ng-r2420-20070602/tools/do_multi.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/do_multi.c 2007-06-04 13:21:54.000767304 +0200
++++ madwifi-ng-r2420-20070602/tools/do_multi.c 2007-06-04 13:21:58.134138936 +0200
@@ -9,16 +9,20 @@
progname = basename(argv[0]);
@@ -139,9 +148,10 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/do_multi.c madwifi-ng-r2377-200705
if(strcmp(progname, "athkey") == 0)
ret = athkey_init(argc, argv);
if(strcmp(progname, "athstats") == 0)
-diff -urN madwifi-ng-r2377-20070526.old/tools/Makefile madwifi-ng-r2377-20070526.dev/tools/Makefile
---- madwifi-ng-r2377-20070526.old/tools/Makefile 2007-05-26 18:51:08.203840368 +0200
-+++ madwifi-ng-r2377-20070526.dev/tools/Makefile 2007-05-26 18:51:09.212687000 +0200
+Index: madwifi-ng-r2420-20070602/tools/Makefile
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/tools/Makefile 2007-06-04 13:21:54.001767152 +0200
++++ madwifi-ng-r2420-20070602/tools/Makefile 2007-06-04 13:21:58.134138936 +0200
@@ -52,7 +52,7 @@
ifdef DOMULTI
@@ -160,4 +170,3 @@ diff -urN madwifi-ng-r2377-20070526.old/tools/Makefile madwifi-ng-r2377-20070526
ln -s -f madwifi_multi $$i; \
done
-
diff --git a/package/madwifi/patches/300-napi_polling.patch b/package/madwifi/patches/300-napi_polling.patch
index f8135710e4..7990ed7092 100644
--- a/package/madwifi/patches/300-napi_polling.patch
+++ b/package/madwifi/patches/300-napi_polling.patch
@@ -1,6 +1,7 @@
-diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
---- madwifi.old/ath/if_ath.c 2007-06-01 11:26:04.181689864 +0200
-+++ madwifi.dev/ath/if_ath.c 2007-06-01 11:39:53.078678368 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:58.130139544 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:58.427094400 +0200
@@ -167,7 +167,7 @@
int, u_int32_t);
static void ath_setdefantenna(struct ath_softc *, u_int);
@@ -10,7 +11,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
static int ath_hardstart(struct sk_buff *, struct net_device *);
static int ath_mgtstart(struct ieee80211com *, struct sk_buff *);
#ifdef ATH_SUPERG_COMP
-@@ -443,7 +443,6 @@
+@@ -442,7 +442,6 @@
ATH_TXBUF_LOCK_INIT(sc);
ATH_RXBUF_LOCK_INIT(sc);
@@ -18,7 +19,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
ATH_INIT_TQUEUE(&sc->sc_txtq, ath_tx_tasklet, dev);
ATH_INIT_TQUEUE(&sc->sc_bmisstq, ath_bmiss_tasklet, dev);
ATH_INIT_TQUEUE(&sc->sc_bstucktq, ath_bstuck_tasklet, dev);
-@@ -700,6 +699,8 @@
+@@ -699,6 +698,8 @@
dev->set_mac_address = ath_set_mac_address;
dev->change_mtu = ath_change_mtu;
dev->tx_queue_len = ATH_TXBUF - 1; /* 1 for mgmt frame */
@@ -27,7 +28,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
#ifdef USE_HEADERLEN_RESV
dev->hard_header_len += sizeof(struct ieee80211_qosframe) +
sizeof(struct llc) +
-@@ -1665,6 +1666,7 @@
+@@ -1664,6 +1665,7 @@
*/
ath_hal_getisr(ah, &status); /* NB: clears ISR too */
DPRINTF(sc, ATH_DEBUG_INTR, "%s: status 0x%x\n", __func__, status);
@@ -35,7 +36,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
status &= sc->sc_imask; /* discard unasked for bits */
if (status & HAL_INT_FATAL) {
sc->sc_stats.ast_hardware++;
-@@ -1700,7 +1702,12 @@
+@@ -1699,7 +1701,12 @@
if (status & HAL_INT_RX) {
sc->sc_tsf = ath_hal_gettsf64(ah);
ath_uapsd_processtriggers(sc);
@@ -49,7 +50,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
}
if (status & HAL_INT_TX) {
#ifdef ATH_SUPERG_DYNTURBO
-@@ -1726,6 +1733,11 @@
+@@ -1725,6 +1732,11 @@
}
}
#endif
@@ -61,7 +62,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
ATH_SCHEDULE_TQUEUE(&sc->sc_txtq, &needmark);
}
if (status & HAL_INT_BMISS) {
-@@ -3296,10 +3308,10 @@
+@@ -3295,10 +3307,10 @@
*
* XXX Using in_softirq is not right since we might
* be called from other soft irq contexts than
@@ -74,7 +75,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
netif_stop_queue(dev);
}
-@@ -3312,7 +3324,7 @@
+@@ -3311,7 +3323,7 @@
DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s:\n", __func__);
netif_start_queue(dev);
if (!in_softirq()) /* NB: see above */
@@ -83,7 +84,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
}
/*
-@@ -5573,13 +5585,12 @@
+@@ -5569,13 +5581,12 @@
sc->sc_rxotherant = 0;
}
@@ -99,7 +100,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
struct ath_buf *bf;
struct ath_softc *sc = dev->priv;
struct ieee80211com *ic = &sc->sc_ic;
-@@ -5591,12 +5602,15 @@
+@@ -5587,12 +5598,15 @@
unsigned int len;
int type;
u_int phyerr;
@@ -115,7 +116,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
do {
bf = STAILQ_FIRST(&sc->sc_rxbuf);
if (bf == NULL) { /* XXX ??? can this happen */
-@@ -5620,6 +5634,13 @@
+@@ -5616,6 +5630,13 @@
/* NB: never process the self-linked entry at the end */
break;
}
@@ -129,7 +130,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
skb = bf->bf_skb;
if (skb == NULL) { /* XXX ??? can this happen */
printk("%s: no skbuff (%s)\n", DEV_NAME(dev), __func__);
-@@ -5658,6 +5679,7 @@
+@@ -5654,6 +5675,7 @@
sc->sc_stats.ast_rx_phyerr++;
phyerr = rs->rs_phyerr & 0x1f;
sc->sc_stats.ast_rx_phy[phyerr]++;
@@ -137,7 +138,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
}
if (rs->rs_status & HAL_RXERR_DECRYPT) {
/*
-@@ -5868,9 +5890,29 @@
+@@ -5865,9 +5887,29 @@
STAILQ_INSERT_TAIL(&sc->sc_rxbuf, bf, bf_list);
ATH_RXBUF_UNLOCK_IRQ(sc);
} while (ath_rxbuf_init(sc, bf) == 0);
@@ -167,7 +168,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
#undef PA2DESC
}
-@@ -7487,11 +7529,22 @@
+@@ -7484,11 +7526,22 @@
struct net_device *dev = (struct net_device *)data;
struct ath_softc *sc = dev->priv;
@@ -190,7 +191,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
netif_wake_queue(dev);
if (sc->sc_softled)
-@@ -7508,6 +7561,7 @@
+@@ -7505,6 +7558,7 @@
struct net_device *dev = (struct net_device *)data;
struct ath_softc *sc = dev->priv;
@@ -198,7 +199,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
/*
* Process each active queue.
*/
-@@ -7528,6 +7582,16 @@
+@@ -7525,6 +7579,16 @@
if (sc->sc_uapsdq && txqactive(sc->sc_ah, sc->sc_uapsdq->axq_qnum))
ath_tx_processq(sc, sc->sc_uapsdq);
@@ -215,7 +216,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
netif_wake_queue(dev);
if (sc->sc_softled)
-@@ -7545,6 +7609,7 @@
+@@ -7542,6 +7606,7 @@
unsigned int i;
/* Process each active queue. */
@@ -223,7 +224,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
for (i = 0; i < HAL_NUM_TX_QUEUES; i++)
if (ATH_TXQ_SETUP(sc, i) && txqactive(sc->sc_ah, i))
ath_tx_processq(sc, &sc->sc_txq[i]);
-@@ -7553,6 +7618,16 @@
+@@ -7550,6 +7615,16 @@
ath_tx_processq(sc, sc->sc_xrtxq);
#endif
@@ -240,7 +241,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
netif_wake_queue(dev);
if (sc->sc_softled)
-@@ -7651,6 +7726,7 @@
+@@ -7648,6 +7723,7 @@
ath_draintxq(struct ath_softc *sc)
{
struct ath_hal *ah = sc->sc_ah;
@@ -248,7 +249,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
unsigned int i;
/* XXX return value */
-@@ -9170,9 +9246,9 @@
+@@ -9167,9 +9243,9 @@
dev->mtu = mtu;
if ((dev->flags & IFF_RUNNING) && !sc->sc_invalid) {
/* NB: the rx buffers may need to be reallocated */
@@ -260,9 +261,10 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
}
ATH_UNLOCK(sc);
-diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
---- madwifi.old/ath/if_athvar.h 2007-06-01 11:26:04.158693360 +0200
-+++ madwifi.dev/ath/if_athvar.h 2007-06-01 11:33:26.549439744 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_athvar.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_athvar.h 2007-06-04 13:21:57.500235304 +0200
++++ madwifi-ng-r2420-20070602/ath/if_athvar.h 2007-06-04 13:21:58.428094248 +0200
@@ -48,6 +48,10 @@
#include "if_athioctl.h"
#include "net80211/ieee80211.h" /* XXX for WME_NUM_AC */
@@ -299,10 +301,11 @@ diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
#define ATH_RXBUF_LOCK_INIT(_sc) spin_lock_init(&(_sc)->sc_rxbuflock)
#define ATH_RXBUF_LOCK_DESTROY(_sc)
-diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_input.c
---- madwifi.old/net80211/ieee80211_input.c 2007-06-01 11:26:04.183689560 +0200
-+++ madwifi.dev/net80211/ieee80211_input.c 2007-06-01 11:31:46.931583960 +0200
-@@ -1144,8 +1144,9 @@
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_input.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_input.c 2007-06-04 13:21:57.502235000 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_input.c 2007-06-04 13:21:58.461089232 +0200
+@@ -1128,8 +1128,9 @@
if (ni->ni_vlan != 0 && vap->iv_vlgrp != NULL) {
/* attach vlan tag */
vlan_hwaccel_receive_skb(skb, vap->iv_vlgrp, ni->ni_vlan);
diff --git a/package/madwifi/patches/301-tx_locking.patch b/package/madwifi/patches/301-tx_locking.patch
index 884035dd10..f2b4cc7fb1 100644
--- a/package/madwifi/patches/301-tx_locking.patch
+++ b/package/madwifi/patches/301-tx_locking.patch
@@ -1,7 +1,8 @@
-diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
---- madwifi.old/ath/if_ath.c 2007-06-01 16:44:25.170898128 +0200
-+++ madwifi.dev/ath/if_ath.c 2007-06-01 20:01:24.205131816 +0200
-@@ -2555,7 +2555,7 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:58.427094400 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:58.684055336 +0200
+@@ -2554,7 +2554,7 @@
/* NB: use this lock to protect an->an_ff_txbuf in athff_can_aggregate()
* call too.
*/
@@ -10,7 +11,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
if (athff_can_aggregate(sc, eh, an, skb, vap->iv_fragthreshold, &ff_flush)) {
if (an->an_tx_ffbuf[skb->priority]) { /* i.e., frame on the staging queue */
bf = an->an_tx_ffbuf[skb->priority];
-@@ -2563,6 +2563,7 @@
+@@ -2562,6 +2562,7 @@
/* get (and remove) the frame from staging queue */
TAILQ_REMOVE(&txq->axq_stageq, bf, bf_stagelist);
an->an_tx_ffbuf[skb->priority] = NULL;
@@ -18,7 +19,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
/*
* chain skbs and add FF magic
-@@ -2585,7 +2586,7 @@
+@@ -2584,7 +2585,7 @@
*/
ATH_HARDSTART_GET_TX_BUF_WITH_LOCK;
if (bf == NULL) {
@@ -27,7 +28,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
goto hardstart_fail;
}
DPRINTF(sc, ATH_DEBUG_XMIT | ATH_DEBUG_FF,
-@@ -2597,8 +2598,7 @@
+@@ -2596,8 +2597,7 @@
an->an_tx_ffbuf[skb->priority] = bf;
TAILQ_INSERT_HEAD(&txq->axq_stageq, bf, bf_stagelist);
@@ -37,7 +38,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
return 0;
}
-@@ -2650,12 +2650,12 @@
+@@ -2649,12 +2649,12 @@
ATH_HARDSTART_GET_TX_BUF_WITH_LOCK;
if (bf == NULL) {
@@ -52,9 +53,10 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
ff_bypass:
-diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
---- madwifi.old/ath/if_athvar.h 2007-06-01 16:44:25.149901320 +0200
-+++ madwifi.dev/ath/if_athvar.h 2007-06-01 20:00:06.916881416 +0200
+Index: madwifi-ng-r2420-20070602/ath/if_athvar.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_athvar.h 2007-06-04 13:21:58.428094248 +0200
++++ madwifi-ng-r2420-20070602/ath/if_athvar.h 2007-06-04 13:21:58.684055336 +0200
@@ -484,6 +484,8 @@
#define ATH_TXQ_INTR_PERIOD 5 /* axq_intrcnt period for intr gen */
#define ATH_TXQ_LOCK_INIT(_tq) spin_lock_init(&(_tq)->axq_lock)
@@ -64,4 +66,3 @@ diff -ur madwifi.old/ath/if_athvar.h madwifi.dev/ath/if_athvar.h
#define ATH_TXQ_LOCK_IRQ(_tq) do { \
unsigned long __axq_lockflags; \
spin_lock_irqsave(&(_tq)->axq_lock, __axq_lockflags);
-
diff --git a/package/madwifi/patches/305-pureg_fix.patch b/package/madwifi/patches/305-pureg_fix.patch
index 4193821877..d3c49d1cb7 100644
--- a/package/madwifi/patches/305-pureg_fix.patch
+++ b/package/madwifi/patches/305-pureg_fix.patch
@@ -1,7 +1,8 @@
-diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.dev/ath/if_ath.c
---- madwifi-ng-r2377-20070526.old/ath/if_ath.c 2007-05-26 18:51:09.426654472 +0200
-+++ madwifi-ng-r2377-20070526.dev/ath/if_ath.c 2007-05-26 18:51:09.440652344 +0200
-@@ -3383,7 +3383,9 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:58.684055336 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:58.895023264 +0200
+@@ -3362,7 +3362,9 @@
rfilt |= HAL_RX_FILTER_PROM;
if (ic->ic_opmode == IEEE80211_M_STA ||
sc->sc_opmode == HAL_M_IBSS || /* NB: AHDEMO too */
@@ -10,11 +11,12 @@ diff -urN madwifi-ng-r2377-20070526.old/ath/if_ath.c madwifi-ng-r2377-20070526.d
+ ((ic->ic_opmode == IEEE80211_M_HOSTAP) &&
+ (ic->ic_protmode != IEEE80211_PROT_NONE)))
rfilt |= HAL_RX_FILTER_BEACON;
- if (sc->sc_nmonvaps > 0)
- rfilt |= (HAL_RX_FILTER_CONTROL | HAL_RX_FILTER_BEACON |
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_input.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c 2007-05-26 18:51:09.429654016 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_input.c 2007-05-26 18:51:09.443651888 +0200
+ if ((sc->sc_nmonvaps > 0) || ((sc->sc_nvaps > 0) && (sc->sc_nibssvaps > 0)))
+ rfilt |= (HAL_RX_FILTER_CONTROL | HAL_RX_FILTER_BEACON |
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_input.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_input.c 2007-06-04 13:21:58.461089232 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_input.c 2007-06-04 13:21:58.897022960 +0200
@@ -321,11 +321,12 @@
bssid = wh->i_addr3;
}
@@ -40,7 +42,7 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2
/* not interested in */
IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,
bssid, NULL, "%s", "not to bss");
-@@ -2555,7 +2557,7 @@
+@@ -2542,7 +2544,7 @@
u_int8_t *frm, *efrm;
u_int8_t *ssid, *rates, *xrates, *wpa, *rsn, *wme, *ath;
u_int8_t rate;
@@ -49,7 +51,7 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2
u_int8_t qosinfo;
wh = (struct ieee80211_frame *) skb->data;
-@@ -2577,11 +2579,15 @@
+@@ -2564,11 +2566,15 @@
* o station mode when associated (to collect state
* updates such as 802.11g slot time), or
* o adhoc mode (to discover neighbors)
@@ -66,7 +68,7 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2
vap->iv_stats.is_rx_mgtdiscard++;
return;
}
-@@ -2664,6 +2670,7 @@
+@@ -2651,6 +2657,7 @@
break;
}
scan.erp = frm[2];
@@ -74,7 +76,7 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2
break;
case IEEE80211_ELEMID_RSN:
scan.rsn = frm;
-@@ -2839,6 +2846,20 @@
+@@ -2826,6 +2833,20 @@
ieee80211_bg_scan(vap);
return;
}
@@ -95,9 +97,10 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_input.c madwifi-ng-r2
/*
* If scanning, just pass information to the scan module.
*/
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c 2007-05-26 18:51:09.430653864 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_node.c 2007-05-26 18:51:09.444651736 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_node.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_node.c 2007-06-04 13:21:57.503234848 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_node.c 2007-06-04 13:21:58.897022960 +0200
@@ -332,10 +332,16 @@
/* Update country ie information */
ieee80211_build_countryie(ic);
@@ -117,11 +120,12 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_node.c madwifi-ng-r23
(void) ieee80211_sta_join1(PASS_NODE(ni));
}
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c 2007-05-26 18:51:09.431653712 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_proto.c 2007-05-26 18:51:09.445651584 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_proto.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_proto.c 2007-06-04 13:21:58.133139088 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_proto.c 2007-06-04 13:21:58.898022808 +0200
@@ -586,6 +586,28 @@
- { 4, { 2, 4, 11, 22 } }, /* IEEE80211_MODE_TURBO_G (mixed b/g) */
+ { 4, { 2, 4, 11, 22 } }, /* IEEE80211_MODE_TURBO_G (mixed b/g) */
};
+static const struct ieee80211_rateset basicpureg[] = {
@@ -149,10 +153,11 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_proto.c madwifi-ng-r2
/*
* Mark the basic rates for the 11g rate table based on the
* specified mode. For 11b compatibility we mark only 11b
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h madwifi-ng-r2377-20070526.dev/net80211/ieee80211_var.h
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h 2007-05-26 18:51:09.321670432 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_var.h 2007-05-26 18:51:09.445651584 +0200
-@@ -584,6 +584,8 @@
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_var.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_var.h 2007-06-04 13:21:58.134138936 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_var.h 2007-06-04 13:21:58.899022656 +0200
+@@ -593,6 +593,8 @@
void ieee80211_build_countryie(struct ieee80211com *);
int ieee80211_media_setup(struct ieee80211com *, struct ifmedia *, u_int32_t,
ifm_change_cb_t, ifm_stat_cb_t);
@@ -161,4 +166,3 @@ diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_var.h madwifi-ng-r237
/* Key update synchronization methods. XXX should not be visible. */
static __inline void
-
diff --git a/package/madwifi/patches/309-micfail_detect.patch b/package/madwifi/patches/309-micfail_detect.patch
index ff3be903c6..4ff11aba55 100644
--- a/package/madwifi/patches/309-micfail_detect.patch
+++ b/package/madwifi/patches/309-micfail_detect.patch
@@ -1,7 +1,8 @@
-diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
---- madwifi.old/ath/if_ath.c 2007-06-01 11:39:53.078678000 +0200
-+++ madwifi.dev/ath/if_ath.c 2007-06-01 11:50:32.819422992 +0200
-@@ -5604,6 +5604,7 @@
+Index: madwifi-ng-r2420-20070602/ath/if_ath.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/ath/if_ath.c 2007-06-04 13:21:58.895023264 +0200
++++ madwifi-ng-r2420-20070602/ath/if_ath.c 2007-06-04 13:21:59.133986936 +0200
+@@ -5602,6 +5602,7 @@
u_int phyerr;
u_int processed = 0, early_stop = 0;
u_int rx_limit = dev->quota;
@@ -9,7 +10,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
/* Let the 802.11 layer know about the new noise floor */
sc->sc_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
-@@ -5698,25 +5699,7 @@
+@@ -5696,25 +5697,7 @@
}
if (rs->rs_status & HAL_RXERR_MIC) {
sc->sc_stats.ast_rx_badmic++;
@@ -36,7 +37,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
}
/*
* Reject error frames if we have no vaps that
-@@ -5774,8 +5757,9 @@
+@@ -5772,8 +5755,9 @@
/*
* Finished monitor mode handling, now reject
* error frames before passing to other vaps
@@ -47,7 +48,7 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
dev_kfree_skb(skb);
skb = NULL;
goto rx_next;
-@@ -5806,6 +5790,27 @@
+@@ -5804,6 +5788,27 @@
sc->sc_hwmap[rs->rs_rate].ieeerate,
rs->rs_rssi);
@@ -75,9 +76,10 @@ diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
/*
* Locate the node for sender, track state, and then
* pass the (referenced) node up to the 802.11 layer
-diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee80211_crypto_ccmp.c
---- madwifi.old/net80211/ieee80211_crypto_ccmp.c 2007-05-30 03:41:18.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_ccmp.c 2007-06-01 11:45:05.000259080 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_ccmp.c 2007-06-04 13:21:57.936169032 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c 2007-06-04 13:21:59.134986784 +0200
@@ -78,7 +78,7 @@
static int ccmp_encap(struct ieee80211_key *, struct sk_buff *, u_int8_t);
static int ccmp_decap(struct ieee80211_key *, struct sk_buff *, int);
@@ -87,7 +89,7 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee8
static const struct ieee80211_cipher ccmp = {
.ic_name = "AES-CCM",
-@@ -298,7 +298,7 @@
+@@ -304,7 +304,7 @@
* Verify and strip MIC from the frame.
*/
static int
@@ -96,9 +98,10 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee8
{
return 1;
}
-diff -ur madwifi.old/net80211/ieee80211_crypto.h madwifi.dev/net80211/ieee80211_crypto.h
---- madwifi.old/net80211/ieee80211_crypto.h 2007-04-16 14:32:29.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto.h 2007-06-01 11:45:05.000259080 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto.h 2007-06-04 13:21:53.000919304 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto.h 2007-06-04 13:21:59.134986784 +0200
@@ -145,7 +145,7 @@
int (*ic_encap)(struct ieee80211_key *, struct sk_buff *, u_int8_t);
int (*ic_decap)(struct ieee80211_key *, struct sk_buff *, int);
@@ -121,9 +124,10 @@ diff -ur madwifi.old/net80211/ieee80211_crypto.h madwifi.dev/net80211/ieee80211_
}
/*
-diff -ur madwifi.old/net80211/ieee80211_crypto_none.c madwifi.dev/net80211/ieee80211_crypto_none.c
---- madwifi.old/net80211/ieee80211_crypto_none.c 2006-09-20 10:45:13.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_none.c 2007-06-01 11:45:05.000259080 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_none.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_none.c 2007-06-04 13:21:53.005918544 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_none.c 2007-06-04 13:21:59.134986784 +0200
@@ -52,7 +52,7 @@
static int none_encap(struct ieee80211_key *, struct sk_buff *, u_int8_t);
static int none_decap(struct ieee80211_key *, struct sk_buff *, int);
@@ -142,9 +146,10 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_none.c madwifi.dev/net80211/ieee8
{
struct ieee80211vap *vap = k->wk_private;
-diff -ur madwifi.old/net80211/ieee80211_crypto_tkip.c madwifi.dev/net80211/ieee80211_crypto_tkip.c
---- madwifi.old/net80211/ieee80211_crypto_tkip.c 2007-05-30 03:41:18.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_tkip.c 2007-06-01 11:45:05.001258928 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_tkip.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_tkip.c 2007-06-04 13:21:53.011917632 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_tkip.c 2007-06-04 13:21:59.135986632 +0200
@@ -57,7 +57,7 @@
static int tkip_encap(struct ieee80211_key *, struct sk_buff *, u_int8_t);
static int tkip_enmic(struct ieee80211_key *, struct sk_buff *, int);
@@ -172,9 +177,10 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_tkip.c madwifi.dev/net80211/ieee8
struct ieee80211vap *vap = ctx->tc_vap;
u8 mic[IEEE80211_WEP_MICLEN];
u8 mic0[IEEE80211_WEP_MICLEN];
-diff -ur madwifi.old/net80211/ieee80211_crypto_wep.c madwifi.dev/net80211/ieee80211_crypto_wep.c
---- madwifi.old/net80211/ieee80211_crypto_wep.c 2007-05-29 23:55:25.000000000 +0200
-+++ madwifi.dev/net80211/ieee80211_crypto_wep.c 2007-06-01 11:45:05.001258928 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_wep.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_wep.c 2007-06-04 13:21:53.016916872 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_wep.c 2007-06-04 13:21:59.135986632 +0200
@@ -54,7 +54,7 @@
static int wep_encap(struct ieee80211_key *, struct sk_buff *, u_int8_t);
static int wep_decap(struct ieee80211_key *, struct sk_buff *, int);
@@ -193,9 +199,10 @@ diff -ur madwifi.old/net80211/ieee80211_crypto_wep.c madwifi.dev/net80211/ieee80
{
return 1;
}
-diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_input.c
---- madwifi.old/net80211/ieee80211_input.c 2007-06-01 11:31:46.931583000 +0200
-+++ madwifi.dev/net80211/ieee80211_input.c 2007-06-01 11:45:05.003258624 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_input.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_input.c 2007-06-04 13:21:58.897022960 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_input.c 2007-06-04 13:21:59.137986328 +0200
@@ -632,7 +632,7 @@
* Next strip any MSDU crypto bits.
*/
@@ -205,7 +212,7 @@ diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_i
IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,
ni->ni_macaddr, "data", "%s", "demic error");
IEEE80211_NODE_STAT(ni, rx_demicfail);
-@@ -3744,6 +3744,47 @@
+@@ -3730,6 +3730,47 @@
}
#endif
@@ -253,9 +260,10 @@ diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_i
#ifdef IEEE80211_DEBUG
/*
* Debugging support.
-diff -ur madwifi.old/net80211/ieee80211_proto.h madwifi.dev/net80211/ieee80211_proto.h
---- madwifi.old/net80211/ieee80211_proto.h 2007-06-01 11:26:04.172691000 +0200
-+++ madwifi.dev/net80211/ieee80211_proto.h 2007-06-01 11:45:05.004258472 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_proto.h
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_proto.h 2007-06-04 13:21:58.134138936 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_proto.h 2007-06-04 13:21:59.137986328 +0200
@@ -91,6 +91,7 @@
void ieee80211_set11gbasicrates(struct ieee80211_rateset *, enum ieee80211_phymode);
enum ieee80211_phymode ieee80211_get11gbasicrates(struct ieee80211_rateset *);
@@ -264,8 +272,10 @@ diff -ur madwifi.old/net80211/ieee80211_proto.h madwifi.dev/net80211/ieee80211_p
/*
* Return the size of the 802.11 header for a management or data frame.
---- madwifi.old/net80211/ieee80211_linux.c 2007-06-02 04:05:42.902538336 +0200
-+++ madwifi.dev/net80211/ieee80211_linux.c 2007-06-02 04:05:55.302653232 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_linux.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_linux.c 2007-06-04 13:21:57.745198064 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_linux.c 2007-06-04 13:21:59.137986328 +0200
@@ -291,8 +291,8 @@
/* TODO: needed parameters: count, keyid, key type, src address, TSC */
snprintf(buf, sizeof(buf), "%s(keyid=%d %scast addr=%s)", tag,
diff --git a/package/madwifi/patches/310-erp_beacon_check.patch b/package/madwifi/patches/310-erp_beacon_check.patch
index e63cca5709..22244cb9fe 100644
--- a/package/madwifi/patches/310-erp_beacon_check.patch
+++ b/package/madwifi/patches/310-erp_beacon_check.patch
@@ -1,6 +1,7 @@
-diff -urN madwifi-ng-r2377-20070526.old/net80211/ieee80211_beacon.c madwifi-ng-r2377-20070526.dev/net80211/ieee80211_beacon.c
---- madwifi-ng-r2377-20070526.old/net80211/ieee80211_beacon.c 2007-05-26 18:51:09.428654168 +0200
-+++ madwifi-ng-r2377-20070526.dev/net80211/ieee80211_beacon.c 2007-05-26 18:51:09.645621184 +0200
+Index: madwifi-ng-r2420-20070602/net80211/ieee80211_beacon.c
+===================================================================
+--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_beacon.c 2007-06-04 13:21:57.501235152 +0200
++++ madwifi-ng-r2420-20070602/net80211/ieee80211_beacon.c 2007-06-04 13:21:59.411944680 +0200
@@ -512,7 +512,7 @@
vap->iv_flags &= ~IEEE80211_F_XRUPDATE;
}