|
@@ -741,10 +741,18 @@ static u8 ath_rc_ratefind_ht(struct ath_softc *sc,
|
|
|
if (rate > (ath_rc_priv->rate_table_size - 1))
|
|
|
rate = ath_rc_priv->rate_table_size - 1;
|
|
|
|
|
|
- ASSERT((rate_table->info[rate].valid &&
|
|
|
- (ath_rc_priv->ht_cap & WLAN_RC_DS_FLAG)) ||
|
|
|
- (rate_table->info[rate].valid_single_stream &&
|
|
|
- !(ath_rc_priv->ht_cap & WLAN_RC_DS_FLAG)));
|
|
|
+ if (rate_table->info[rate].valid &&
|
|
|
+ (ath_rc_priv->ht_cap & WLAN_RC_DS_FLAG))
|
|
|
+ return rate;
|
|
|
+
|
|
|
+ if (rate_table->info[rate].valid_single_stream &&
|
|
|
+ !(ath_rc_priv->ht_cap & WLAN_RC_DS_FLAG));
|
|
|
+ return rate;
|
|
|
+
|
|
|
+ /* This should not happen */
|
|
|
+ WARN_ON(1);
|
|
|
+
|
|
|
+ rate = ath_rc_priv->valid_rate_index[0];
|
|
|
|
|
|
return rate;
|
|
|
}
|