1. 20 9月, 2011 2 次提交
  2. 15 9月, 2011 1 次提交
  3. 25 8月, 2011 1 次提交
  4. 20 5月, 2011 1 次提交
  5. 27 4月, 2011 1 次提交
    • R
      ath9k_hw: Fix Tx IQ Calibration hang issue in AR9003 chips · 3782c69d
      Rajkumar Manoharan 提交于
      On AR9003 chips, doing three IQ calibrations will possibly cause chip
      in stuck state. In noisy environment, chip could receive
      a packet during the middle of three calibrations and it causes
      the conflict of HW access and the eventual failure. It also
      causes IQ calibration outliers which results in poor Tx EVM.
      
      The IQ Cal procedure is after resetting the chip, run IQ cal 3 times
      per each cal cycle and find the two closest readings and average of two.
      The advantage of running Tx IQ cal more than once is that we can compare
      calibration results for the same gain setting over multiple iterations.
      Most of the cases the IQ failures were observed after first pass.
      
      For the AR9485 and later chips, Tx IQ Calibration is performed along
      with AGC cal. But for pre-AR9485 chips, Tx IQ cal HW has to be separated
      from the rest of calibration HW to avoid chip hang. After all
      calibrations are done in HW, we can start SW post-processing.
      By doing this way, we minimize the SW difference among all chips.
      
      The order of calibration (run IQ cal before other calibration) is also
      needed to avoid chip hang for chips before AR9485. This issue was
      originally observed with AR9382.
      
      During the issue kernel log was filled with following message
      ath: timeout (100000 us) on reg 0xa640: 0x00000001 & 0x00000001 != 0x00000000
      ath: timeout (100000 us) on reg 0xa2c4: 0x00158dd9 & 0x00000001 != 0x00000000
      ath: Unable to reset channel (2412 MHz), reset status -5
      ath: Unable to set channel
      Signed-off-by: NRajkumar Manoharan <rmanoharan@atheros.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      3782c69d
  6. 26 4月, 2011 2 次提交
  7. 17 12月, 2010 2 次提交
  8. 08 12月, 2010 4 次提交
  9. 23 11月, 2010 1 次提交
    • J
      ath9k: Use static const · 07b2fa5a
      Joe Perches 提交于
      Using static const generally increases object text and decreases data size.
      It also generally decreases overall object size.
      
         text	   data	    bss	    dec	    hex	filename
        11161	     56	   2136	  13353	   3429	drivers/net/wireless/ath/ath9k/ar9003_paprd.o.new
        11167	     56	   2136	  13359	   342f	drivers/net/wireless/ath/ath9k/ar9003_paprd.o.old
        15428	     56	   3056	  18540	   486c	drivers/net/wireless/ath/ath9k/eeprom_4k.o.old
        15451	     56	   3056	  18563	   4883	drivers/net/wireless/ath/ath9k/eeprom_4k.o.new
        14087	     56	   2560	  16703	   413f	drivers/net/wireless/ath/ath9k/eeprom_9287.o.old
        14036	     56	   2560	  16652	   410c	drivers/net/wireless/ath/ath9k/eeprom_9287.o.new
        10041	     56	   2384	  12481	   30c1	drivers/net/wireless/ath/ath9k/ani.o.new
        10088	     56	   2384	  12528	   30f0	drivers/net/wireless/ath/ath9k/ani.o.old
         9316	   1580	   2304	  13200	   3390	drivers/net/wireless/ath/ath9k/htc_drv_init.o.new
         9316	   1580	   2304	  13200	   3390	drivers/net/wireless/ath/ath9k/htc_drv_init.o.old
        16483	     56	   3432	  19971	   4e03	drivers/net/wireless/ath/ath9k/ar9003_phy.o.new
        16517	     56	   3432	  20005	   4e25	drivers/net/wireless/ath/ath9k/ar9003_phy.o.old
        18221	    104	   2960	  21285	   5325	drivers/net/wireless/ath/ath9k/rc.o.old
        18203	    104	   2960	  21267	   5313	drivers/net/wireless/ath/ath9k/rc.o.new
        19985	     56	   4288	  24329	   5f09	drivers/net/wireless/ath/ath9k/eeprom_def.o.new
        20040	     56	   4288	  24384	   5f40	drivers/net/wireless/ath/ath9k/eeprom_def.o.old
        23997	     56	   4984	  29037	   716d	drivers/net/wireless/ath/ath9k/ar5008_phy.o.old
        23846	     56	   4984	  28886	   70d6	drivers/net/wireless/ath/ath9k/ar5008_phy.o.new
        24285	     56	   3184	  27525	   6b85	drivers/net/wireless/ath/ath9k/ar9003_eeprom.o.old
        24101	     56	   3184	  27341	   6acd	drivers/net/wireless/ath/ath9k/ar9003_eeprom.o.new
         6834	     56	   1032	   7922	   1ef2	drivers/net/wireless/ath/ath9k/ar9002_phy.o.old
         6780	     56	   1032	   7868	   1ebc	drivers/net/wireless/ath/ath9k/ar9002_phy.o.new
        36211	     64	   8624	  44899	   af63	drivers/net/wireless/ath/ath9k/hw.o.new
        36401	     64	   8624	  45089	   b021	drivers/net/wireless/ath/ath9k/hw.o.old
         9281	     56	   1496	  10833	   2a51	drivers/net/wireless/ath/ath9k/ar9003_calib.o.old
         9150	     56	   1496	  10702	   29ce	drivers/net/wireless/ath/ath9k/ar9003_calib.o.new
      
      Use ARRAY_SIZE instead of a magic number.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      07b2fa5a
  10. 17 11月, 2010 1 次提交
  11. 07 10月, 2010 1 次提交
    • F
      ath9k_hw: clean up calibration flags · 6497827f
      Felix Fietkau 提交于
      The calibration actual calibration flags are only used by the per chip family
      source files, so it makes more sense to define them in those files instead
      of globally. That way the code has to test for less flags.
      
      Also instead of using a separate callback for testing whether a particular
      calibration type is supported, simply adjust ah->supp_cals in the calibration
      init which is called right after the hardware reset, before any of the
      calibrations are run.
      Signed-off-by: NFelix Fietkau <nbd@openwrt.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      6497827f
  12. 06 10月, 2010 1 次提交
  13. 05 8月, 2010 3 次提交
  14. 03 6月, 2010 1 次提交
  15. 14 5月, 2010 1 次提交
    • J
      drivers/net: Remove unnecessary returns from void function()s · a4b77097
      Joe Perches 提交于
      This patch removes from drivers/net/ all the unnecessary
      return; statements that precede the last closing brace of
      void functions.
      
      It does not remove the returns that are immediately
      preceded by a label as gcc doesn't like that.
      
      It also does not remove null void functions with return.
      
      Done via:
      $ grep -rP --include=*.[ch] -l "return;\n}" net/ | \
        xargs perl -i -e 'local $/ ; while (<>) { s/\n[ \t\n]+return;\n}/\n}/g; print; }'
      
      with some cleanups by hand.
      
      Compile tested x86 allmodconfig only.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a4b77097
  16. 28 4月, 2010 1 次提交
  17. 17 4月, 2010 5 次提交