1. 11 6月, 2009 1 次提交
  2. 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
  3. 23 4月, 2009 1 次提交
  4. 30 1月, 2009 1 次提交
    • M
      b43: Dynamically control log verbosity · 060210f9
      Michael Buesch 提交于
      Dynamically control the log verbosity with a module parameter.
      This enables us to dynamically enable debugging messages (or disable
      info, warn, error messages) via module parameter or /sys/module/b43/parameters/verbose.
      
      This increases the module size by about 3k. But in practice it reduces the
      module size for the user, because some distributions ship the b43 module
      with CONFIG_B43_DEBUG set, which increases the module by about 15k.
      
      So with this patch applied, distributions should really _disable_ CONFIG_B43_DEBUG.
      There is no reason to keep it in a production-release kernel.
      So we have a net reduction in size by about 12k.
      
      This patch also adds a printk of the wireless core revision, so people
      don't have to enable SSB debugging to get the wireless core revision.
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      060210f9
  5. 06 9月, 2008 1 次提交
  6. 22 5月, 2008 1 次提交
  7. 09 4月, 2008 2 次提交
    • M
      b43: Use SSB block-I/O to do PIO · d8c17e15
      Michael Buesch 提交于
      This changes the b43-PIO code to use the new SSB block-I/O.
      This reduces the overhead by removing lots of function calls, pointer
      dereferencing, if-conditionals any byteswapping for each packet data word.
      
      This also fixes a harmless sparse endianness warning.
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      d8c17e15
    • M
      b43: Add PIO support for PCMCIA devices · 5100d5ac
      Michael Buesch 提交于
      This adds PIO support back (D'oh!) for PCMCIA devices.
      This is a complete rewrite of the old PIO code. It does actually work
      and we get reasonable performance out of it on a modern machine.
      On a PowerBook G4 I get a few MBit for TX and a few more for RX.
      So it doesn't work as well as DMA (of course), but it's a _lot_ faster
      than the old PIO code (only got a few kBit with that).
      
      The limiting factor is the host CPU speed. So it will generate 100%
      CPU usage when the network interface is heavily loaded. A voluntary preemption
      point in the RX path makes sure Desktop Latency isn't hurt.
      
      PIO is needed for 16bit PCMCIA devices, as we really don't want to poke with
      the braindead DMA mechanisms on PCMCIA sockets. Additionally, not all
      PCMCIA sockets do actually support DMA in 16bit mode (mine doesn't).
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      5100d5ac
  8. 28 2月, 2008 1 次提交
  9. 29 1月, 2008 2 次提交
    • M
      b43: Add NPHY kconfig option · d5c71e46
      Michael Buesch 提交于
      This adds a new Kconfig option for enabling probing of N-PHYs.
      This option will be removed again once the stuff works.
      For now it is to help in development. This way real users won't
      execute the broken N-PHY codepaths, but the developers can easily
      enable N-PHY stuff.
      
      To enable N-PHY probing simply remove the BROKEN dependency
      and enable the option in the kernel config.
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      d5c71e46
    • M
      b43: Remove PIO support · 03b29773
      Michael Buesch 提交于
      Remove b43 PIO support.
      DMA works well on all supported devices. There's no reason to use PIO.
      Additionally, new devices don't support PIO in hardware anymore.
      b43 PIO support is dead and unused code.
      
      After applying this patch please do
      git rm drivers/net/wireless/b43/pio.h
      git rm drivers/net/wireless/b43/pio.c
      to remove the main PIO support code.
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      03b29773
  10. 10 11月, 2007 1 次提交
  11. 11 10月, 2007 4 次提交