diff options
| author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-03-07 01:06:37 +0000 | 
|---|---|---|
| committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-03-07 01:06:37 +0000 | 
| commit | d28a1e629bbd954784b86809e6037eadde5d5c24 (patch) | |
| tree | c28f0bbb41b4e5988af881bb0b08cd2bd9bbeeb6 | |
| parent | 3b95d7d5c47891169f08be625ee03cd645287881 (diff) | |
fix channel change bugs
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10553 3c298f89-4303-0410-b956-a3cf2f4a3e73
| -rw-r--r-- | package/madwifi/patches/332-reset_beacons.patch | 21 | 
1 files changed, 10 insertions, 11 deletions
| diff --git a/package/madwifi/patches/332-reset_beacons.patch b/package/madwifi/patches/332-reset_beacons.patch index e34746ee6..caf3cc14f 100644 --- a/package/madwifi/patches/332-reset_beacons.patch +++ b/package/madwifi/patches/332-reset_beacons.patch @@ -1,8 +1,8 @@  Index: madwifi-trunk-r3314/ath/if_ath.c  =================================================================== ---- madwifi-trunk-r3314.orig/ath/if_ath.c	2008-02-20 22:22:50.203268987 +0100 -+++ madwifi-trunk-r3314/ath/if_ath.c	2008-02-20 22:23:25.745294410 +0100 -@@ -1592,6 +1592,16 @@ +--- madwifi-trunk-r3314.orig/ath/if_ath.c	2008-02-26 20:23:58.477203701 +0100 ++++ madwifi-trunk-r3314/ath/if_ath.c	2008-02-26 20:23:59.241247240 +0100 +@@ -1594,6 +1594,16 @@   	ath_init(dev);   } @@ -19,16 +19,16 @@ Index: madwifi-trunk-r3314/ath/if_ath.c   /* Channel Availability Check is running, or a channel has already found to be     * unavailable. */   static int -@@ -2474,7 +2484,7 @@ +@@ -2476,7 +2486,7 @@   	 */   	sc->sc_curchan.channel = ic->ic_curchan->ic_freq;   	sc->sc_curchan.channelFlags = ath_chan2flags(ic->ic_curchan);  -	if (!ath_hal_reset(ah, sc->sc_opmode, &sc->sc_curchan, AH_FALSE, &status)) { -+	if (!ath_hw_reset(ah, sc->sc_opmode, &sc->sc_curchan, AH_FALSE, &status)) { ++	if (!ath_hw_reset(ah, sc->sc_opmode, &sc->sc_curchan, AH_TRUE, &status)) {   		EPRINTF(sc, "unable to reset hardware: '%s' (HAL status %u) "   			"(freq %u flags 0x%x)\n",    			ath_get_hal_status_desc(status), status, -@@ -2773,7 +2783,7 @@ +@@ -2775,7 +2785,7 @@   	ath_draintxq(sc);		/* stop xmit side */   	ath_stoprecv(sc);		/* stop recv side */   	/* NB: indicate channel change so we do a full reset */ @@ -37,18 +37,17 @@ Index: madwifi-trunk-r3314/ath/if_ath.c   		EPRINTF(sc, "Unable to reset hardware: '%s' (HAL status %u)\n",   			ath_get_hal_status_desc(status), status); -@@ -8848,8 +8858,8 @@ +@@ -8848,8 +8858,7 @@   		 * needed to do the reset with chanchange = AH_FALSE in order   		 * to receive traffic when peforming high velocity channel   		 * changes. */  -		if (!ath_hal_reset(ah, sc->sc_opmode, &hchan, AH_TRUE, &status)   ||  -		    !ath_hal_reset(ah, sc->sc_opmode, &hchan, AH_FALSE, &status)) { -+		if (!ath_hw_reset(ah, sc->sc_opmode, &hchan, AH_TRUE, &status)   || -+		    !ath_hw_reset(ah, sc->sc_opmode, &hchan, AH_FALSE, &status)) { ++		if (!ath_hw_reset(ah, sc->sc_opmode, &hchan, AH_TRUE, &status)) {   			EPRINTF(sc, "Unable to reset channel %u (%u MHz) "   				"flags 0x%x '%s' (HAL status %u)\n",   				ieee80211_chan2ieee(ic, chan), chan->ic_freq, -@@ -8905,7 +8915,7 @@ +@@ -8905,7 +8914,7 @@   		 * re configure beacons when it is a turbo mode switch.   		 * HW seems to turn off beacons during turbo mode switch.   		 */ @@ -57,7 +56,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c   			ath_beacon_config(sc, NULL);   		/*   		 * Re-enable interrupts. -@@ -11455,7 +11465,7 @@ +@@ -11456,7 +11465,7 @@   		ieee80211_cancel_scan(vap);	/* anything current */   		ieee80211_wme_updateparams(vap);   		/*  reset the WNIC */ | 
