diff --git a/package/mac80211/patches/542-ath9k_bstuck_nf_calibrate.patch b/package/mac80211/patches/542-ath9k_bstuck_nf_calibrate.patch
index 35db2cba375855d8eb5c462771500a4a2daa4fea..4ac4ab210a5b9d402d35d0d607f0ee662b381cca 100644
--- a/package/mac80211/patches/542-ath9k_bstuck_nf_calibrate.patch
+++ b/package/mac80211/patches/542-ath9k_bstuck_nf_calibrate.patch
@@ -78,7 +78,7 @@
  	caldata->rawNoiseFloor = h[0].privNF;
  	return true;
  }
-@@ -374,3 +407,26 @@ s16 ath9k_hw_getchan_noise(struct ath_hw
+@@ -374,3 +407,28 @@ s16 ath9k_hw_getchan_noise(struct ath_hw
  	return ah->caldata->rawNoiseFloor;
  }
  EXPORT_SYMBOL(ath9k_hw_getchan_noise);
@@ -100,6 +100,8 @@
 +	 */
 +	if (!caldata->nfcal_pending)
 +		ath9k_hw_start_nfcal(ah, true);
++	else if (!(REG_READ(ah, AR_PHY_AGC_CONTROL) & AR_PHY_AGC_CONTROL_NF))
++		ath9k_hw_getnf(ah, ah->curchan);
 +
 +	caldata->nfcal_interference = true;
 +}