-diff -urN madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c madwifi-ng-refcount-r2313-20070505.dev/ath/if_ath.c
---- madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c 2007-05-13 18:17:55.862076712 +0200
-+++ madwifi-ng-refcount-r2313-20070505.dev/ath/if_ath.c 2007-05-13 18:17:56.119037648 +0200
-@@ -4411,16 +4411,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;
/* XXX conditionalize multi-bss support? */
if (ic->ic_opmode == IEEE80211_M_HOSTAP) {
/*
-@@ -4434,20 +4449,61 @@
+@@ -4417,20 +4432,61 @@
if (sc->sc_stagbeacons)
intval /= ATH_BCBUF; /* for staggered beacons */
if ((sc->sc_nostabeacons) &&
int dtimperiod, dtimcount;
int cfpperiod, cfpcount;
-@@ -4463,13 +4519,13 @@
+@@ -4446,13 +4502,13 @@
dtimcount = 0; /* XXX? */
cfpperiod = 1; /* NB: no PCF support yet */
cfpcount = 0;
do {
nexttbtt += intval;
if (--dtimcount < 0) {
-@@ -4477,7 +4533,7 @@
+@@ -4460,7 +4516,7 @@
if (--cfpcount < 0)
cfpcount = cfpperiod - 1;
}
#undef FUDGE
memset(&bs, 0, sizeof(bs));
bs.bs_intval = intval;
-@@ -4529,7 +4585,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__,
-- (long long) tsf, tsftu,
-+ (long long) hw_tsf, hw_tsftu,
+- (unsigned long long) tsf, tsftu,
++ (unsigned long long) hw_tsf, hw_tsftu,
bs.bs_intval,
bs.bs_nexttbtt,
bs.bs_dtimperiod,
-@@ -4548,7 +4604,7 @@
+@@ -4531,7 +4587,7 @@
ath_hal_intrset(ah, sc->sc_imask);
} else {
ath_hal_intrset(ah, 0);
intval |= HAL_BEACON_RESET_TSF;
if (ic->ic_opmode == IEEE80211_M_IBSS) {
/*
-@@ -4585,8 +4641,40 @@
+@@ -4568,8 +4624,40 @@
if (ic->ic_opmode == IEEE80211_M_IBSS && sc->sc_hasveol)
ath_beacon_start_adhoc(sc, vap);
}