1. 22 1月, 2013 2 次提交
    • B
      net: cdc_mbim: send ZLP after max sized NTBs · 328d7b8a
      Bjørn Mork 提交于
      We normally avoid sending ZLPs by padding NTBs with a zero byte
      if the NTB is shorter than dwNtbOutMaxSize, resulting in a short
      USB packet instead of a ZLP.  But in the case where the NTB length
      is exactly dwNtbOutMaxSize and this is an exact multiplum of
      wMaxPacketSize, then we must send a ZLP.
      
      This fixes an issue seen on a Sierra Wireless MC7710 device
      where the transmission would fail whenever we ended up padding
      the NTBs to max size.
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      328d7b8a
    • B
      net: cdc_ncm: workaround for missing CDC Union · 9992c2e2
      Bjørn Mork 提交于
      Adding support for the MBIM mode in some Sierra Wireless devices.
      
      Some Sierra Wireless firmwares support CDC MBIM but have no CDC
      Union funtional descriptor. This violates the MBIM specification,
      but we can easily work around the bug by looking at the Interface
      Association Descriptor instead.  This is most likely what
      Windows uses too, which explains how the firmware bug has gone
      unnoticed until now.
      
      This change will not affect any currently supported device
      conforming to the NCM or MBIM specifications, as they must have
      the CDC Union descriptor.
      
      Cc: Greg Suarez <gsuarez@smithmicro.com>
      Cc: Alexey Orishko <alexey.orishko@stericsson.com>
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9992c2e2
  2. 20 1月, 2013 1 次提交
  3. 19 1月, 2013 4 次提交
  4. 18 1月, 2013 3 次提交
  5. 17 1月, 2013 3 次提交
  6. 16 1月, 2013 2 次提交
  7. 15 1月, 2013 5 次提交
  8. 13 1月, 2013 1 次提交
    • S
      be2net: fix unconditionally returning IRQ_HANDLED in INTx · d0b9cec3
      Sathya Perla 提交于
      commit e49cc34f introduced an unconditional IRQ_HANDLED return in be_intx()
      to workaround Lancer and BE2 HW issues. This is bad as it prevents the kernel
      from detecting interrupt storms due to broken HW.
      
      The BE2/Lancer HW issues are:
      1) In Lancer, there is no means for the driver to detect if the interrupt
      belonged to device, other than counting and notifying events.
      2) In Lancer de-asserting INTx takes a while, causing the INTx irq handler
      to be called multiple times till the de-assert happens.
      3) In BE2, we see an occasional interrupt even when EQs are unarmed.
      
      Issue (1) can cause the notified events to be orphaned, if NAPI was already
      running.
      This patch fixes this issue by scheduling NAPI only if it is not scheduled
      already. Doing this also takes care of possible events_get() race that may be
      caused due to issue (2) and (3). Also, IRQ_HANDLED is returned only the first
      time zero events are detected.
      (Thanks Ben H. for the feedback and suggestions.)
      Signed-off-by: NSathya Perla <sathya.perla@emulex.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d0b9cec3
  9. 12 1月, 2013 13 次提交
  10. 11 1月, 2013 6 次提交