]> git.openfabrics.org - ~shefty/rdma-dev.git/commitdiff
ath9k: fix max phy rate at rate control init
authorRajkumar Manoharan <rmanohar@qca.qualcomm.com>
Sat, 10 Dec 2011 13:29:43 +0000 (18:59 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 12 Dec 2011 19:23:28 +0000 (14:23 -0500)
The stations always chooses 1Mbps for all trasmitting frames,
whenever the AP is configured to lock the supported rates.
As the max phy rate is always set with the 4th from highest phy rate,
this assumption might be wrong if we have less than that. Fix that.

Cc: stable@kernel.org
Cc: Paul Stewart <pstew@google.com>
Reported-by: Ajay Gummalla <agummalla@google.com>
Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/rc.c

index 8448281dd0691f53cfa41fb260ff7e60f83e64e0..cc5703b853bcfe5a9ccfdb8083e43c8b3d8fa51f 100644 (file)
@@ -1270,7 +1270,9 @@ static void ath_rc_init(struct ath_softc *sc,
 
        ath_rc_priv->max_valid_rate = k;
        ath_rc_sort_validrates(rate_table, ath_rc_priv);
-       ath_rc_priv->rate_max_phy = ath_rc_priv->valid_rate_index[k-4];
+       ath_rc_priv->rate_max_phy = (k > 4) ?
+                                       ath_rc_priv->valid_rate_index[k-4] :
+                                       ath_rc_priv->valid_rate_index[k-1];
        ath_rc_priv->rate_table = rate_table;
 
        ath_dbg(common, ATH_DBG_CONFIG,