1. 29 8月, 2009 1 次提交
    • P
      ath5k: fix uninitialized value use in ath5k_eeprom_read_turbo_modes() · 3b3ee43d
      Pavel Roskin 提交于
      The `val' variable in ath5k_eeprom_read_turbo_modes() is used
      uninitialized.  gcc 4.4.1 with -fno-inline-functions-called-once reports
      it:
      
      eeprom.c: In function 'ath5k_eeprom_read_turbo_modes':
      eeprom.c:441: warning: 'val' may be used uninitialized in this function
      
      Comparing the code to the Atheros HAL, it's clear that the split between
      ath5k_eeprom_read_modes() and ath5k_eeprom_read_turbo_modes() was
      incorrect.
      
      The Atheros HAL reads both turbo and non-turbo data from EEPROM in one
      function.  Some turbo mode parameters are derived from the same EEPROM
      values as non-turbo parameters, just from different bits.
      
      Merge ath5k_eeprom_read_turbo_modes() into ath5k_eeprom_read_modes() to
      fix the warning.  The actual values and offsets have been cross-checked
      against Atheros HAL.
      Signed-off-by: NPavel Roskin <proski@gnu.org>
      Acked-by: NBob Copeland <me@bobcopeland.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      3b3ee43d
  2. 14 8月, 2009 1 次提交
  3. 07 5月, 2009 4 次提交
  4. 23 4月, 2009 1 次提交
  5. 28 3月, 2009 1 次提交
  6. 17 3月, 2009 1 次提交
  7. 14 2月, 2009 2 次提交
  8. 30 1月, 2009 2 次提交
    • N
      ath5k: More EEPROM code updates · eaee7cc2
      Nick Kossifidis 提交于
      * Don't scale power values on RF5111 EEPROMs because they get out of
        bounds (power is u8, so multiplying power by 50 is too much and there
        is no reason to do so -we don't do it on other chips anyway-). HAL
        does it as a technique to handle 0.5 dbm steps but i believe it's not
        the right thing to do and certainly not the right place to do it. We
        'll work this out on interpolation code for all chips (0.5 or 0.25
        steps etc) in a generic way.
      Signed-Off-by: NNick Kossifidis <mickflemm@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      eaee7cc2
    • N
      ath5k: Update EEPROM code · 0ea9c00c
      Nick Kossifidis 提交于
      *Read misc2...6 values from eeprom since we want to use them (fixes
       wrong power calibration info offset on RF2413+ chips)
      
      *Initialize num_piers to 0 for RF2413 chips (note that we read 2GHz
       frequency piers while reading mode sections, we have to ignore them
       -usualy they are 0xff anyway but during my tests i got a 1 on b mode
       with no data- and use the newer eemap.
      
      *Add some more comments (please forgive my poor English ;-( ) and
       some minor code cleanup
      
      *Tested on 2425 and 2112 and has the same data with ath_info (i
       wrote some debug code on debug.c to print everything like ath_info
       but i haven't tested it yet on 5111 and it's full of > 80 col lines,
       if anyone wants to play with it let me know).
      Signed-Off-by: NNick Kossifidis <mickflemm@gmail.com>
      Acked-by: NFelix Fietkau <nbd@openwrt.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      0ea9c00c
  9. 26 11月, 2008 1 次提交
  10. 06 9月, 2008 1 次提交
    • N
      ath5k: HW code cleanup · c6e387a2
      Nick Kossifidis 提交于
       * No code changes...
      
       * Split hw.c to multiple files for better maintenance and add some documentation on each file
         code is going to grow soon (eeprom.c for example is going to get much stuff currently developed
         on ath_info) so it's better this way.
      
       * Rename following functions to maintain naming scheme:
      
           ah_setup_xtx_desc -> ah_setup_mrr_tx_desc
           (Because xtx doesn't say much, it's actually
           a multi-rate-retry tx descriptor)
      
           ath5k_hw_put_tx/rx_buf - > ath5k_hw_set_tx/rxdp
           ath5k_hw_get_tx/rx_buf -> ath5k_hw_get_tx/rxdp
           (We don't put any "buf" we set descriptor pointers on hw)
      
           ath5k_hw_tx_start -> ath5k_hw_start_tx_dma
           ath5k_hw_start_rx -> ath5k_hw_start_rx_dma
           ath5k_hw_stop_pcu_recv -> ath5k_hw_stop_rx_pcu
           (It's easier this way to identify them, we also
           have ath5k_hw_start_rx_pcu which completes the
           set)
      
           ath5k_hw_set_intr -> ath5k_hw_set_imr
           (As in get_isr we set imr here, not "intr")
      
        * Move ath5k_hw_setup_rx_desc on ah->ah_setup_rx_desc so we can
          include support for different rx descriptors in the future
      
        * Further cleanups so that checkpatch doesn't complain
          (only some > 80 col warnings for eeprom.h and reg.h as usual
          due to comments)
      
        Tested on 5211 and 5213 cards and works ok.
      
      Changes-licensed-under: ISC
      Signed-off-by: NNick Kossifidis <mickflemm@gmail.com>
      Acked-by: NLuis R. Rodriguez <lrodriguez@atheros.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      c6e387a2