1. 28 3月, 2014 2 次提交
    • A
      rtl8180: rationalize TX queues · fd6564fc
      Andrea Merello 提交于
      On currently supported HW there are four TX queues (three for normal
      packets and one for beacons).
      
      The driver uses just one TX queue, and declare to mac80211 to
      support just one queue, but it allocates coherent memory for all
      queues.
      Furthermore the TX is code is written assumimg four queues exists,
      and even if we decide to enable more queues in future, its mapping
      rule to mac80211 is fixed.
      
      This means we have memory waste on rtl8180/rtl8185, and we have also
      not enough flexibility to add support for boards (rtl8187se) that
      will use more queues.
      
      This patch changes things in order to allocate coherent memory only
      for the queues effectively used and it make it possible to specify
      how to map hardware queues on mac80211 queues, that will be used
      by rtl8187se code as soon it will be merged.
      
      Note: even if the beacon queue is currently unused, this should
      change, so I kept it.
      Signed-off-by: NAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      fd6564fc
    • A
      rtl8180: fix DMA register are written two times · 4818d828
      Andrea Merello 提交于
      Hw DMA registers are written in rtl8180_init_hw function.
      They are also written again just after calling rtl8180_init_hw.
      There is no point in doing this twice.
      
      Remove those redundant register writes from rtl8180_start.
      Signed-off-by: NAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      4818d828
  2. 18 3月, 2014 3 次提交
  3. 15 3月, 2014 1 次提交
    • A
      rtl8180: prepare to handle more than two chip types · 6caefd12
      Andrea Merello 提交于
      Currently a "r8185" integer variable is used as a boolean flag to
      indicate whether the card is a rtl8185 or not.
      Since now the driver supports only rtl8185 and rtl8180 cards, if
      "r8185" variable is zero then the card is implicitly assumed to
      be a rtl8180.
      
      Now I'm preparing to add support for a third card type (rtl8187se).
      
      This patch changes the "r8185" flag with an enum variable to
      explicitly indicate which card type we have.
      
      I'm submitting this this patch now, even if I still have to submit
      other patches that not pertain with rtl8187se support, because
      IMHO it's not worth rebasing them on the current code, using r8185
      flag, and then changing them back again nearly immediately.
      BTW if someone feels I really should do this, please tell me..
      Signed-off-by: NAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      6caefd12
  4. 05 3月, 2014 2 次提交
  5. 01 3月, 2014 5 次提交
  6. 13 2月, 2014 1 次提交
  7. 07 2月, 2014 2 次提交
    • A
      rtl8180: Add error check for pci_map_single return value in TX path · 348f7d4a
      andrea.merello 提交于
      Orignal code will not detect a DMA mapping failure, causing the HW
      to attempt a DMA from an invalid address.
      
      This patch add the error check and eventually simply drops the TX
      packet if we can't map it for DMA.
      Signed-off-by: Nandrea merello <andrea.merello@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      348f7d4a
    • A
      rtl8180: Add error check for pci_map_single return value in RX path · 2b4db05e
      andrea.merello 提交于
      In original code the old RX DMA buffer is unmapped and processed and at the end
      of the isr a new buffer is mapped with pci_map_single and attached to the RX
      descriptor.
      
      If pci_map_single fails then the RX descriptor remains with no valid DMA buffer
      attached.
      In this condition the DMA will target where it shouldn't with obvious evil
      consequences.
      
      Simply avoiding re-arming the descriptor will prevent buggy DMA but it will
      result soon in RX stuck.
      
      This patch move the DMA mapping of the new buffer at the beginning of the ISR
      (and it adds error check for pci_map_single success/fail).
      
      If the DMA mapping fails then we do not unmap the old buffer and we re-arm the
      descriptor without processing it, with the old DMA buffer still attached.
      
      In this way we lose the currently RX-ed packet, but whenever next calls to
      pci_map_single will succeed again,then the RX process will go on without stuck.
      Signed-off-by: Nandrea merello <andrea.merello@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      2b4db05e
  8. 04 1月, 2014 1 次提交
  9. 27 9月, 2013 1 次提交
  10. 27 8月, 2013 1 次提交
  11. 26 3月, 2013 1 次提交
  12. 07 12月, 2012 1 次提交
  13. 14 11月, 2012 1 次提交
  14. 31 7月, 2012 1 次提交
  15. 17 7月, 2012 1 次提交
  16. 21 6月, 2012 1 次提交
  17. 17 4月, 2012 1 次提交
    • A
      net/wireless: use module_pci_driver · 5b0a3b7e
      Axel Lin 提交于
      This patch converts the drivers in drivers/net/wireless/* to use
      module_pci_driver() macro which makes the code smaller and a bit simpler.
      Signed-off-by: NAxel Lin <axel.lin@gmail.com>
      Cc: "John W. Linville" <linville@tuxdriver.com>
      Cc: Jiri Slaby <jirislaby@gmail.com>
      Cc: Nick Kossifidis <mickflemm@gmail.com>
      Cc: "Luis R. Rodriguez" <mcgrof@qca.qualcomm.com>
      Cc: Simon Kelley <simon@thekelleys.org.uk>
      Cc: Jouni Malinen <j@w1.fi>
      Cc: Lennert Buytenhek <buytenh@wantstofly.org>
      Cc: Christian Lamparter <chunkeey@googlemail.com>
      Cc: Ivo van Doorn <IvDoorn@gmail.com>
      Cc: Larry Finger <Larry.Finger@lwfinger.net>
      Cc: linux-wireless@vger.kernel.org
      Acked-by: NLennert Buytenhek <buytenh@wantstofly.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      5b0a3b7e
  18. 01 11月, 2011 1 次提交
  19. 28 9月, 2011 1 次提交
  20. 07 6月, 2011 1 次提交
  21. 26 2月, 2011 1 次提交
    • J
      mac80211: make tx() operation return void · 7bb45683
      Johannes Berg 提交于
      The return value of the tx operation is commonly
      misused by drivers, leading to errors. All drivers
      will drop frames if they fail to TX the frame, and
      they must also properly manage the queues (if they
      didn't, mac80211 would already warn).
      
      Removing the ability for drivers to return a BUSY
      value also allows significant cleanups of the TX
      TX handling code in mac80211.
      
      Note that this also fixes a bug in ath9k_htc, the
      old "return -1" there was wrong.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Tested-by: Sedat Dilek <sedat.dilek@googlemail.com> [ath5k]
      Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> [rt2x00]
      Acked-by: Larry Finger <Larry.Finger@lwfinger.net> [b43, rtl8187, rtlwifi]
      Acked-by: Luciano Coelho <coelho@ti.com> [wl12xx]
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      7bb45683
  22. 24 2月, 2011 1 次提交
  23. 23 12月, 2010 1 次提交
  24. 07 10月, 2010 1 次提交
  25. 19 8月, 2010 1 次提交
  26. 17 8月, 2010 2 次提交
  27. 06 8月, 2010 1 次提交
  28. 28 7月, 2010 1 次提交
  29. 27 7月, 2010 1 次提交
  30. 21 7月, 2010 1 次提交