1. 08 7月, 2009 1 次提交
  2. 11 6月, 2009 2 次提交
  3. 04 6月, 2009 1 次提交
    • J
      rfkill: rewrite · 19d337df
      Johannes Berg 提交于
      This patch completely rewrites the rfkill core to address
      the following deficiencies:
      
       * all rfkill drivers need to implement polling where necessary
         rather than having one central implementation
      
       * updating the rfkill state cannot be done from arbitrary
         contexts, forcing drivers to use schedule_work and requiring
         lots of code
      
       * rfkill drivers need to keep track of soft/hard blocked
         internally -- the core should do this
      
       * the rfkill API has many unexpected quirks, for example being
         asymmetric wrt. alloc/free and register/unregister
      
       * rfkill can call back into a driver from within a function the
         driver called -- this is prone to deadlocks and generally
         should be avoided
      
       * rfkill-input pointlessly is a separate module
      
       * drivers need to #ifdef rfkill functions (unless they want to
         depend on or select RFKILL) -- rfkill should provide inlines
         that do nothing if it isn't compiled in
      
       * the rfkill structure is not opaque -- drivers need to initialise
         it correctly (lots of sanity checking code required) -- instead
         force drivers to pass the right variables to rfkill_alloc()
      
       * the documentation is hard to read because it always assumes the
         reader is completely clueless and contains way TOO MANY CAPS
      
       * the rfkill code needlessly uses a lot of locks and atomic
         operations in locked sections
      
       * fix LED trigger to actually change the LED when the radio state
         changes -- this wasn't done before
      Tested-by: NAlan Jenkins <alan-jenkins@tuffmail.co.uk>
      Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> [thinkpad]
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      19d337df
  4. 23 5月, 2009 1 次提交
  5. 21 5月, 2009 1 次提交
  6. 07 5月, 2009 2 次提交
  7. 23 4月, 2009 2 次提交
  8. 16 4月, 2009 1 次提交
  9. 28 3月, 2009 1 次提交
    • M
      b43: Mask PHY TX error interrupt, if not debugging · 3e3ccb3d
      Michael Buesch 提交于
      This masks the PHY TX error interrupt, if debugging is disabled.
      
      Currently we have a bug somewhere which triggers this interrupt once
      in a while. (Depends on the network noise/quality). While this is nonfatal,
      it scares the hell out of users and we frequently receive bugreports
      that incorrectly identify this error message as the reason.
      
      There's another problem with this. The PHY TX error interrupt is protected
      with a watchdog that will restart the device if it keeps triggering very often.
      This is used to fix interrupt storms from completely broken devices.
      
      However, this watchdog might trigger in completely normal operation.
      If the TX capacity of the card is saturated, the likeliness of the watchdog
      triggering increases, as more TX errors occur. The current threshold
      for the watchdog is 1000 errors in 15 seconds.
      
      This patch adds a workaround for the issue by just enabling the interrupt
      if debugging is disabled (by Kconfig or by modparam).
      
      This has the downside that real fatal PHY TX errors are not caught anymore.
      But this is nonfatal due to the following reasons:
      * If the card is not able to transmit anymore, MLME will notice anyway.
      * I did _never_ see a real fatal PHY TX error in a mainline b43 driver.
      * It does _not_ result in interrupt storms or something like that.
        It will simply result in a stalled card. It can be debugged by enabling
        the debugging module parameter.
      Signed-off-by: NMichael Buesch <mb@bu3sch>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      3e3ccb3d
  10. 06 3月, 2009 1 次提交
  11. 28 2月, 2009 5 次提交
  12. 18 2月, 2009 1 次提交
  13. 30 1月, 2009 12 次提交
  14. 13 1月, 2009 1 次提交
  15. 20 12月, 2008 2 次提交
  16. 11 11月, 2008 2 次提交
  17. 01 11月, 2008 4 次提交