Felix Fietkau wrote:
> diff --git a/drivers/net/wireless/ath/ath9k/link.c
> b/drivers/net/wireless/ath/ath9k/link.c
> index 2343f56..713b040 100644
> --- a/drivers/net/wireless/ath/ath9k/link.c
> +++ b/drivers/net/wireless/ath/ath9k/link.c
> @@ -371,9 +371,14 @@ void ath_ani_calibrate(unsigned long data)
>
> /* Perform calibration if necessary */
> if (longcal || shortcal) {
> - common->ani.caldone =
> - ath9k_hw_calibrate(ah, ah->curchan,
> - ah->rxchainmask, longcal);
> + int ret = ath9k_hw_calibrate(ah, ah->curchan, ah->rxchainmask,
> + longcal);
> + if (ret < 0) {
> + ath9k_queue_reset(sc, RESET_TYPE_CALIBRATION);
> + return;
> + }
> +
> + common->ani.caldone = ret;
Shouldn't ani.caldone be set to false if calibration fails
(and true otherwise) ? It is used earlier in the ANI routine and
since this returns after queuing a reset, caldone will have
incorrect information, no ?
Sujith
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html