1. 21 Nov, 2008 2 commits
    • Ivo van Doorn's avatar
      rt2x00: Fix race condition when using inderect registers · 8ff48a8b
      Ivo van Doorn authored
      
      
      Indirect registers require multiple calls to the CSR
      register in order to access the indirect registers.
      This must be protected under a lock to prevent race
      conditions which could cause invalid data to
      be returned when reading from the indirect register or silent
      failures when writing data to the indirect register.
      
      USB drivers where already protected under a mutex,
      so rename the mutex and make PCI drivers use the mutex
      as well.
      This now means that BBP and RF registers are no longer
      accessible in interrupt context. That is not a bad
      situation since the slow behavior of accessing
      those registers means we don't _want_ to access them
      in interrupt context either.
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      8ff48a8b
    • Ivo van Doorn's avatar
      rt2x00: Cleanup TX/RX entry handling · 798b7adb
      Ivo van Doorn authored
      
      
      Merge the callback functions init_txentry() and
      init_rxentry(). This makes life in rt2x00lib a
      lot simpler and we can cleanup several functions.
      
      rt2x00pci contained "fake" FIELD definitions for
      descriptor words. This is not flexible since it
      assumes the driver will always have the same field
      to indicate if a driver is available or not.
      This should be dependent on the driver, and we
      should add a callback function for this.
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      798b7adb
  2. 10 Nov, 2008 2 commits
    • Ivo van Doorn's avatar
      rt2x00: Remove debugfs CSR access wrappers · 743b97ca
      Ivo van Doorn authored
      
      
      Move calculation of CSR register offset into rt2x00debug.c
      and remove the wrapper functions from each individual driver.
      (Except rt2500usb, which still needs to wrap for the
      different value type argument).
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      743b97ca
    • Ivo van Doorn's avatar
      rt2x00: Optimize configuration handling · e4ea1c40
      Ivo van Doorn authored
      
      
      Implement latest changed from mac80211 configuration
      handling to optmize configuration handling in rt2x00.
      
       * Remove set_retry_limit callback function, handled
         through config()
       * Move config_antenna to its own callback function,
         it isn't handled by mac80211 anymore
       * Use IEEE80211_CONF_CHANGED_* flags and remove manual
         checks
       * Removed deprecated short slot setting through config()
         and put it in config_erp() through which mac80211 now
         configures it
       * Remove config_phymode() and move contents to config_erp()
         since it only managed the basic rates which is now
         determined by mac80211 through config_erp().
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      e4ea1c40
  3. 31 Oct, 2008 2 commits
  4. 27 Oct, 2008 1 commit
  5. 24 Sep, 2008 1 commit
  6. 11 Sep, 2008 2 commits
  7. 29 Aug, 2008 3 commits
  8. 22 Aug, 2008 4 commits
  9. 29 Jul, 2008 4 commits
  10. 14 Jul, 2008 2 commits
  11. 10 Jul, 2008 1 commit
  12. 09 Jul, 2008 1 commit
  13. 26 Jun, 2008 2 commits
  14. 25 Jun, 2008 1 commit
    • Ivo van Doorn's avatar
      rt2x00: Fix unbalanced mutex locking · 99ade259
      Ivo van Doorn authored
      
      
      The usb_cache_mutex was not correctly released
      under all circumstances. Both rt73usb as rt2500usb
      didn't release the mutex under certain conditions
      when the register access failed. Obviously such
      failure would lead to deadlocks.
      
      In addition under similar circumstances when the
      bbp register couldn't be read the value must be
      set to 0xff to indicate that the value is wrong.
      This too didn't happen under all circumstances.
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      99ade259
  15. 14 Jun, 2008 6 commits
  16. 13 Jun, 2008 1 commit
  17. 21 May, 2008 5 commits