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
+--- madwifi-trunk-r3314.orig/ath/if_ath.c 2008-06-13 10:39:28.000000000 +0200
++++ madwifi-trunk-r3314/ath/if_ath.c 2008-06-13 10:39:54.000000000 +0200
@@ -1014,9 +1014,7 @@
*/
sc->sc_hasveol = ath_hal_hasveol(ah);
* 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);
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
+--- madwifi-trunk-r3314.orig/ath/if_athvar.h 2008-06-13 10:39:28.000000000 +0200
++++ madwifi-trunk-r3314/ath/if_athvar.h 2008-06-13 10:39:32.000000000 +0200
@@ -693,6 +693,10 @@
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_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
+--- madwifi-trunk-r3314.orig/ath/if_ath_hal.h 2008-06-13 10:39:26.000000000 +0200
++++ madwifi-trunk-r3314/ath/if_ath_hal.h 2008-06-13 10:39:32.000000000 +0200
@@ -67,14 +67,14 @@
static inline HAL_BOOL ath_hal_getdiagstate(struct ath_hal *ah, int request,