1. 29 Aug, 2008 3 commits
    • Mattias Nissler's avatar
      rt2x00: Only configure hardware when radio is enabled · 2575c11d
      Mattias Nissler authored
      
      
      Some hardware configuration registers such as antenna and channel configuration
      can only be written when the radio is enabled. Previously, we didn't consider
      this, so some configuration items could be set inconsistently after reenabling
      the radio. This patch changes the config() handler to only reprogram the
      hardware when the radio is enabled. Configuration changes that are made while
      the radio is off are postponed until the radio is switched back on. We also
      leave the radio turned off during initialization and only enable it when
      requested by mac80211. This allows us to get rid of the DIRTY_CONFIG flag,
      because the device is now guaranteed to be completely initialized when brought
      up by mac80211.
      Signed-off-by: default avatarMattias Nissler <mattias.nissler@gmx.de>
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      2575c11d
    • Ivo van Doorn's avatar
      rt2x00: Map extra_tx_headroom to DMA · 3ee54a07
      Ivo van Doorn authored
      
      
      If a driver requests additional headroom it should
      be mapped to DMA as well because it will be send to
      the hardware as well (as form of extra descriptor).
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      3ee54a07
    • Ivo van Doorn's avatar
      rt2x00: Fix race conditions in flag handling · 0262ab0d
      Ivo van Doorn authored
      
      
      Some of the flags should be accessed atomically to
      prevent race conditions. The flags that are most important
      are those that can change often and indicate the actual
      state of the device, queue or queue entry.
      
      The big flag rename was done to move all state flags to
      the same naming type as the other rt2x00dev flags and
      made sure all places where the flags were used were changed. ;)
      
      Thanks to Stephen for most of the queue flags updates,
      which fixes some of the most obvious consequences of the
      race conditions. Among those the notorious:
      
      rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 0.
      rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 0.
      rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 0.
      Signed-off-by: default avatarStephen Blackheath <tramp.enshrine.stephen@blacksapphire.com>
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      0262ab0d
  2. 22 Aug, 2008 9 commits
  3. 18 Aug, 2008 1 commit
  4. 07 Aug, 2008 1 commit
  5. 04 Aug, 2008 1 commit
    • Ivo van Doorn's avatar
      rt2x00: Disable link tuning in rt2500usb · d06193f3
      Ivo van Doorn authored
      
      
      In the legacy rt2570 driver the link tuner was never
      really called. And now the reason has finally become
      apparent: It breaks TX capabilities
      
      As soon as the device has been associated all following
      TX frames will be queued in the hardware and never transmitted
      to the air. Disabling sections of the link tuner did not
      have the expected result, but completely disabling the
      link tuner did have the right result (Both of my rt2570 devices
      came back to life).
      
      This should fix Fedora bug: 411481
      
      v2: Fix typos
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      d06193f3
  6. 02 Aug, 2008 1 commit
    • Ivo van Doorn's avatar
      rt2x00: Fix compile warning · 82f97b8d
      Ivo van Doorn authored
      
      
      rt2x00usb_vendor_request_large_buff is write-only, so it is
      safe to make the argument a const.
      
      Fixes compile warning:
      drivers/net/wireless/rt2x00/rt73usb.c: In function 'rt73usb_load_firmware':
      drivers/net/wireless/rt2x00/rt73usb.c:916: warning: passing argument 5 of 'rt2x00usb_vendor_request_large_buff' discards qualifiers from pointer target typ
      Signed-off-by: default avatarIvo van Doorn <IvDoorn@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      82f97b8d
  7. 01 Aug, 2008 6 commits
  8. 29 Jul, 2008 11 commits
  9. 15 Jul, 2008 1 commit
  10. 14 Jul, 2008 6 commits