source: trunk/package/mac80211/patches/441-ath5k_no_agc_recalibration.patch @ 30624

Last change on this file since 30624 was 30624, checked in by nbd, 4 years ago

ath5k: do not re-run AGC calibration periodically - fixes stability issues on AR2315 (#10574)

File size: 1.2 KB
  • drivers/net/wireless/ath/ath5k/phy.c

    a b ath5k_hw_phy_calibrate(struct ath5k_hw * 
    18711871                ret = 0; 
    18721872        } 
    18731873 
    1874         /* On full calibration do an AGC calibration and 
    1875          * request a PAPD probe for gainf calibration if 
    1876          * needed */ 
    1877         if (ah->ah_cal_mask & AR5K_CALIBRATION_FULL) { 
     1874        /* On full calibration request a PAPD probe for 
     1875         * gainf calibration if needed */ 
     1876        if ((ah->ah_cal_mask & AR5K_CALIBRATION_FULL) && 
     1877            (ah->ah_radio == AR5K_RF5111 || 
     1878             ah->ah_radio == AR5K_RF5112) && 
     1879            channel->hw_value != AR5K_MODE_11B) 
     1880                ath5k_hw_request_rfgain_probe(ah); 
    18781881 
    1879                 AR5K_REG_ENABLE_BITS(ah, AR5K_PHY_AGCCTL, 
    1880                                         AR5K_PHY_AGCCTL_CAL); 
    1881  
    1882                 ret = ath5k_hw_register_timeout(ah, AR5K_PHY_AGCCTL, 
    1883                         AR5K_PHY_AGCCTL_CAL | AR5K_PHY_AGCCTL_NF, 
    1884                         0, false); 
    1885                 if (ret) { 
    1886                         ATH5K_ERR(ah, 
    1887                                 "gain calibration timeout (%uMHz)\n", 
    1888                                 channel->center_freq); 
    1889                 } 
    1890  
    1891                 if ((ah->ah_radio == AR5K_RF5111 || 
    1892                         ah->ah_radio == AR5K_RF5112) 
    1893                         && (channel->hw_value != AR5K_MODE_11B)) 
    1894                         ath5k_hw_request_rfgain_probe(ah); 
    1895         } 
    1896  
    1897         /* Update noise floor 
    1898          * XXX: Only do this after AGC calibration */ 
     1882        /* Update noise floor */ 
    18991883        if (!(ah->ah_cal_mask & AR5K_CALIBRATION_NF)) 
    19001884                ath5k_hw_update_noise_floor(ah); 
    19011885 
Note: See TracBrowser for help on using the repository browser.