X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/bc7e8422cad1519f0cabbc56e6cf26cb874c1c3d..3a63130e2ecff400e15c67bb2a1afc911b2881fe:/package/madwifi/patches/352-ani_fix.patch diff --git a/package/madwifi/patches/352-ani_fix.patch b/package/madwifi/patches/352-ani_fix.patch index ac1c3fec8..e8dce0cbe 100644 --- a/package/madwifi/patches/352-ani_fix.patch +++ b/package/madwifi/patches/352-ani_fix.patch @@ -1,8 +1,6 @@ -Index: madwifi-trunk-r3314/ath/if_ath.c -=================================================================== ---- madwifi-trunk-r3314.orig/ath/if_ath.c 2008-06-13 03:42:29.000000000 +0200 -+++ madwifi-trunk-r3314/ath/if_ath.c 2008-06-13 03:46:33.000000000 +0200 -@@ -1014,9 +1014,7 @@ +--- a/ath/if_ath.c ++++ b/ath/if_ath.c +@@ -1014,9 +1014,7 @@ ath_attach(u_int16_t devid, struct net_d */ sc->sc_hasveol = ath_hal_hasveol(ah); @@ -13,7 +11,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c sc->sc_hasintmit = ath_hal_hasintmit(ah); /* get mac address from hardware */ -@@ -1144,6 +1142,11 @@ +@@ -1144,6 +1142,11 @@ ath_attach(u_int16_t devid, struct net_d sc->sc_rp_lasttsf = 0; sc->sc_last_tsf = 0; @@ -25,24 +23,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c return 0; bad3: ieee80211_ifdetach(ic); -@@ -2347,16 +2350,6 @@ - } - if (status & HAL_INT_MIB) { - sc->sc_stats.ast_mib++; -- /* When the card receives lots of PHY errors, the MIB -- * interrupt will fire at a very rapid rate. We will use -- * a timer to enforce at least 1 jiffy delay between -- * MIB interrupts. This should be unproblematic, since -- * the hardware will continue to update the counters in -- * the mean time. */ -- sc->sc_imask &= ~HAL_INT_MIB; -- ath_hal_intrset(ah, sc->sc_imask); -- mod_timer(&sc->sc_mib_enable, jiffies + 1); -- - /* Let the HAL handle the event. */ - ath_hal_mibevent(ah, &sc->sc_halstats); - } -@@ -2426,6 +2419,43 @@ +@@ -2428,6 +2431,43 @@ ath_chan2flags(struct ieee80211_channel return flags; } @@ -86,7 +67,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c /* * Context: process context */ -@@ -2491,8 +2521,7 @@ +@@ -2493,8 +2533,7 @@ ath_init(struct net_device *dev) if (sc->sc_softled) ath_hal_gpioCfgOutput(ah, sc->sc_ledpin); @@ -96,16 +77,16 @@ Index: madwifi-trunk-r3314/ath/if_ath.c /* * This is needed only to setup initial state -@@ -2528,7 +2557,7 @@ +@@ -2530,7 +2569,7 @@ ath_init(struct net_device *dev) * Enable MIB interrupts when there are hardware phy counters. * Note we only do this (at the moment) for station mode. */ -- if (sc->sc_needmib) +- if (sc->sc_needmib && ic->ic_opmode == IEEE80211_M_STA) + if (sc->sc_needmib && ath_hal_getintmit(ah, NULL)) sc->sc_imask |= HAL_INT_MIB; ath_hal_intrset(ah, sc->sc_imask); -@@ -2785,9 +2814,7 @@ +@@ -2787,9 +2826,7 @@ ath_reset(struct net_device *dev) EPRINTF(sc, "Unable to reset hardware: '%s' (HAL status %u)\n", ath_get_hal_status_desc(status), status); @@ -116,7 +97,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c ath_update_txpow(sc); /* update tx power state */ ath_radar_update(sc); ath_setdefantenna(sc, sc->sc_defant); -@@ -4165,6 +4192,8 @@ +@@ -4174,6 +4211,8 @@ ath_calcrxfilter(struct ath_softc *sc) if (sc->sc_nmonvaps > 0) rfilt |= (HAL_RX_FILTER_CONTROL | HAL_RX_FILTER_BEACON | HAL_RX_FILTER_PROBEREQ | HAL_RX_FILTER_PROM); @@ -125,7 +106,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c if (sc->sc_curchan.privFlags & CHANNEL_DFS) rfilt |= (HAL_RX_FILTER_PHYERR | HAL_RX_FILTER_PHYRADAR); return rfilt; -@@ -6513,9 +6542,6 @@ +@@ -6526,9 +6565,6 @@ process_rx_again: rs->rs_rssi = 0; len = rs->rs_datalen; @@ -135,7 +116,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c if (rs->rs_more) { /* -@@ -8865,9 +8891,7 @@ +@@ -8876,9 +8912,7 @@ ath_chan_set(struct ath_softc *sc, struc if (sc->sc_softled) ath_hal_gpioCfgOutput(ah, sc->sc_ledpin); @@ -146,7 +127,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c sc->sc_curchan = hchan; ath_update_txpow(sc); /* update tx power state */ ath_radar_update(sc); -@@ -10644,9 +10668,54 @@ +@@ -10655,9 +10689,54 @@ enum { ATH_RP_IGNORED = 24, ATH_RADAR_IGNORED = 25, ATH_MAXVAPS = 26, @@ -201,7 +182,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl, write, filp, buffer, lenp, ppos) { struct ath_softc *sc = ctl->extra1; -@@ -10832,6 +10901,11 @@ +@@ -10843,6 +10922,11 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl case ATH_RADAR_IGNORED: sc->sc_radar_ignored = val; break; @@ -213,7 +194,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c default: ret = -EINVAL; break; -@@ -10898,6 +10972,11 @@ +@@ -10909,6 +10993,11 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl case ATH_RADAR_IGNORED: val = sc->sc_radar_ignored; break; @@ -225,7 +206,7 @@ Index: madwifi-trunk-r3314/ath/if_ath.c default: ret = -EINVAL; break; -@@ -11075,6 +11154,24 @@ +@@ -11086,6 +11175,24 @@ static const ctl_table ath_sysctl_templa .proc_handler = ath_sysctl_halparam, .extra2 = (void *)ATH_RADAR_IGNORED, }, @@ -250,26 +231,22 @@ Index: madwifi-trunk-r3314/ath/if_ath.c { 0 } }; -Index: madwifi-trunk-r3314/ath/if_athvar.h -=================================================================== ---- madwifi-trunk-r3314.orig/ath/if_athvar.h 2008-06-13 03:42:28.000000000 +0200 -+++ madwifi-trunk-r3314/ath/if_athvar.h 2008-06-13 03:42:29.000000000 +0200 -@@ -693,6 +693,10 @@ +--- a/ath/if_athvar.h ++++ b/ath/if_athvar.h +@@ -693,6 +693,10 @@ struct ath_softc { unsigned int sc_txcont_power; /* Continuous transmit power in 0.5dBm units */ unsigned int sc_txcont_rate; /* Continuous transmit rate in Mbps */ + int8_t sc_intmit; /* Interference mitigation enabled, -1 = auto, based on mode, 0/1 = off/on */ -+ int8_t sc_noise_immunity; /* Noise immunity level, 1-5, -1 == auto) */ ++ int8_t sc_noise_immunity; /* Noise immunity level, 0-4, -1 == auto) */ + int8_t sc_ofdm_weak_det; /* OFDM weak frames detection, -1 == auto */ + /* rate tables */ const HAL_RATE_TABLE *sc_rates[IEEE80211_MODE_MAX]; const HAL_RATE_TABLE *sc_currates; /* current rate table */ -Index: madwifi-trunk-r3314/ath/if_ath_hal.h -=================================================================== ---- madwifi-trunk-r3314.orig/ath/if_ath_hal.h 2008-06-13 03:42:27.000000000 +0200 -+++ madwifi-trunk-r3314/ath/if_ath_hal.h 2008-06-13 03:45:35.000000000 +0200 -@@ -67,14 +67,14 @@ +--- a/ath/if_ath_hal.h ++++ b/ath/if_ath_hal.h +@@ -67,14 +67,14 @@ static inline HAL_POWER_MODE ath_hal_get static inline HAL_BOOL ath_hal_getdiagstate(struct ath_hal *ah, int request, const void *args, u_int32_t argsize,