madwifi: fix a rare ad-hoc mode crash
[openwrt/svn-archive/archive.git] / package / madwifi / patches / 375-atim_tsf_update.patch
index 64bd1c1973ba472159a8127670edc653aa1a12af..9381f8a818461810b18f33bcb2672f86e2372703 100644 (file)
@@ -8,7 +8,7 @@
  static int ath_desc_alloc(struct ath_softc *);
  static void ath_desc_free(struct ath_softc *);
  static void ath_desc_swap(struct ath_desc *);
-@@ -2792,6 +2793,72 @@ ath_set_ack_bitrate(struct ath_softc *sc
+@@ -2793,6 +2794,72 @@ ath_set_ack_bitrate(struct ath_softc *sc
        return 1;
  }
  
@@ -81,7 +81,7 @@
  /*
   * Reset the hardware w/o losing operational state.  This is
   * basically a more efficient way of doing ath_stop, ath_init,
-@@ -5291,6 +5358,7 @@ ath_beacon_config(struct ath_softc *sc, 
+@@ -5294,6 +5361,7 @@ ath_beacon_config(struct ath_softc *sc, 
        u_int64_t tsf, hw_tsf;
        u_int32_t tsftu, hw_tsftu;
        u_int32_t intval, nexttbtt = 0;
@@ -89,7 +89,7 @@
        int reset_tsf = 0;
  
        if (vap == NULL)
-@@ -5298,6 +5366,9 @@ ath_beacon_config(struct ath_softc *sc, 
+@@ -5301,6 +5369,9 @@ ath_beacon_config(struct ath_softc *sc, 
  
        ni = vap->iv_bss;
  
@@ -99,7 +99,7 @@
        hw_tsf = ath_hal_gettsf64(ah);
        tsf = le64_to_cpu(ni->ni_tstamp.tsf);
        hw_tsftu = hw_tsf >> 10;
-@@ -5487,15 +5558,27 @@ ath_beacon_config(struct ath_softc *sc, 
+@@ -5490,15 +5561,27 @@ ath_beacon_config(struct ath_softc *sc, 
                                <= ath_hal_sw_beacon_response_time)
                        nexttbtt += intval;
                sc->sc_nexttbtt = nexttbtt;
        /* We print all debug messages here, in order to preserve the
         * time critical aspect of this function */
        DPRINTF(sc, ATH_DEBUG_BEACON,
-@@ -6398,6 +6481,11 @@ ath_recv_mgmt(struct ieee80211vap * vap,
+@@ -6401,6 +6484,11 @@ ath_recv_mgmt(struct ieee80211vap * vap,
                        DPRINTF(sc, ATH_DEBUG_BEACON, 
                                "Updated beacon timers\n");
                }