X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/e617fcefcd55b1184a1626ce34ab898832208862..0715d705de70a961453a20f6eb923447438c35f1:/package/madwifi/patches/352-ani_fix.patch?ds=sidebyside diff --git a/package/madwifi/patches/352-ani_fix.patch b/package/madwifi/patches/352-ani_fix.patch index aff0d4a42..e8dce0cbe 100644 --- a/package/madwifi/patches/352-ani_fix.patch +++ b/package/madwifi/patches/352-ani_fix.patch @@ -1,6 +1,6 @@ --- a/ath/if_ath.c +++ b/ath/if_ath.c -@@ -1014,9 +1014,7 @@ +@@ -1014,9 +1014,7 @@ ath_attach(u_int16_t devid, struct net_d */ sc->sc_hasveol = ath_hal_hasveol(ah); @@ -11,7 +11,7 @@ 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; @@ -23,24 +23,7 @@ return 0; bad3: ieee80211_ifdetach(ic); -@@ -2351,16 +2354,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); - } -@@ -2430,6 +2423,43 @@ +@@ -2428,6 +2431,43 @@ ath_chan2flags(struct ieee80211_channel return flags; } @@ -84,7 +67,7 @@ /* * Context: process context */ -@@ -2495,8 +2525,7 @@ +@@ -2493,8 +2533,7 @@ ath_init(struct net_device *dev) if (sc->sc_softled) ath_hal_gpioCfgOutput(ah, sc->sc_ledpin); @@ -94,7 +77,7 @@ /* * This is needed only to setup initial state -@@ -2532,7 +2561,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. */ @@ -103,7 +86,7 @@ sc->sc_imask |= HAL_INT_MIB; ath_hal_intrset(ah, sc->sc_imask); -@@ -2789,9 +2818,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); @@ -114,7 +97,7 @@ ath_update_txpow(sc); /* update tx power state */ ath_radar_update(sc); ath_setdefantenna(sc, sc->sc_defant); -@@ -4173,6 +4200,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); @@ -123,7 +106,7 @@ if (sc->sc_curchan.privFlags & CHANNEL_DFS) rfilt |= (HAL_RX_FILTER_PHYERR | HAL_RX_FILTER_PHYRADAR); return rfilt; -@@ -6523,9 +6552,6 @@ +@@ -6526,9 +6565,6 @@ process_rx_again: rs->rs_rssi = 0; len = rs->rs_datalen; @@ -133,7 +116,7 @@ if (rs->rs_more) { /* -@@ -8877,9 +8903,7 @@ +@@ -8876,9 +8912,7 @@ ath_chan_set(struct ath_softc *sc, struc if (sc->sc_softled) ath_hal_gpioCfgOutput(ah, sc->sc_ledpin); @@ -144,7 +127,7 @@ sc->sc_curchan = hchan; ath_update_txpow(sc); /* update tx power state */ ath_radar_update(sc); -@@ -10656,9 +10680,54 @@ +@@ -10655,9 +10689,54 @@ enum { ATH_RP_IGNORED = 24, ATH_RADAR_IGNORED = 25, ATH_MAXVAPS = 26, @@ -199,7 +182,7 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl, write, filp, buffer, lenp, ppos) { struct ath_softc *sc = ctl->extra1; -@@ -10844,6 +10913,11 @@ +@@ -10843,6 +10922,11 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl case ATH_RADAR_IGNORED: sc->sc_radar_ignored = val; break; @@ -211,7 +194,7 @@ default: ret = -EINVAL; break; -@@ -10910,6 +10984,11 @@ +@@ -10909,6 +10993,11 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl case ATH_RADAR_IGNORED: val = sc->sc_radar_ignored; break; @@ -223,7 +206,7 @@ default: ret = -EINVAL; break; -@@ -11087,6 +11166,24 @@ +@@ -11086,6 +11175,24 @@ static const ctl_table ath_sysctl_templa .proc_handler = ath_sysctl_halparam, .extra2 = (void *)ATH_RADAR_IGNORED, }, @@ -250,7 +233,7 @@ --- a/ath/if_athvar.h +++ b/ath/if_athvar.h -@@ -693,6 +693,10 @@ +@@ -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 */ @@ -263,7 +246,7 @@ const HAL_RATE_TABLE *sc_currates; /* current rate table */ --- a/ath/if_ath_hal.h +++ b/ath/if_ath_hal.h -@@ -67,14 +67,14 @@ +@@ -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,