1. 04 5月, 2012 2 次提交
  2. 02 5月, 2012 3 次提交
  3. 30 4月, 2012 1 次提交
  4. 11 4月, 2012 1 次提交
  5. 02 3月, 2012 7 次提交
  6. 28 2月, 2012 1 次提交
    • F
      usb: dwc3: gadget: use generic map/unmap routines · 0fc9a1be
      Felipe Balbi 提交于
      those routines have everything we need to map/unmap
      USB requests and it's better to use them.
      
      In order to achieve that, we had to add a simple
      change on how we allocate and use our setup buffer;
      we cannot allocate it from coherent anymore otherwise
      the generic map/unmap routines won't be able to easily
      know that the GetStatus request already has a DMA
      address.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      0fc9a1be
  7. 24 2月, 2012 1 次提交
  8. 13 2月, 2012 1 次提交
    • F
      usb: dwc3: convert TRBs into bitshifts · f6bafc6a
      Felipe Balbi 提交于
      this will get rid of a useless memcpy on
      IRQ handling, thus improving driver performance.
      
      Tested with OMAP5430 running g_mass_storage on
      SuperSpeed and HighSpeed.
      
      Note that we are removing the little endian access
      of the TRB and all accesses will be in System endianness,
      if there happens to be a system in BE, bit 12 of GSBUSCFG0
      should be set so that HW does byte invariant BE accesses
      when fetching TRBs.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      f6bafc6a
  9. 10 2月, 2012 1 次提交
    • G
      usb: dwc3: ep0: fix SetFeature(TEST) · 3b637367
      Gerard Cauvy 提交于
      When host requests us to enter a test mode,
      we cannot directly enter the test mode before
      Status Phase is completed, otherwise the core
      will never be able to deliver the Status ZLP
      to host, because it has already entered the
      requested Test Mode.
      
      In order to fix the error, we move the actual
      start of Test Mode right after we receive
      Transfer Complete event of the status phase.
      Signed-off-by: NGerard Cauvy <g-cauvy1@ti.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      3b637367
  10. 06 2月, 2012 9 次提交
  11. 24 1月, 2012 1 次提交
  12. 05 1月, 2012 1 次提交
    • F
      usb: ch9: fix up MaxStreams helper · 18b7ede5
      Felipe Balbi 提交于
      According to USB 3.0 Specification Table 9-22, if
      bmAttributes [4:0] are set to zero, it means "no
      streams supported", but the way this helper was
      defined on Linux, we will *always* have one stream
      which might cause several problems.
      
      For example on DWC3, we would tell the controller
      endpoint has streams enabled and yet start transfers
      with Stream ID set to 0, which would goof up the host
      side.
      
      While doing that, convert the macro to an inline
      function due to the different checks we now need.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NSarah Sharp <sarah.a.sharp@linux.intel.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      18b7ede5
  13. 21 12月, 2011 5 次提交
  14. 12 12月, 2011 6 次提交
    • F
      usb: dwc3: gadget: fix stream enable bit · c90bfaec
      Felipe Balbi 提交于
      ep->max_streams is a mere hint to the gadget
      driver that 'ep' supports stream handling. Using
      that as a decision variable for enabling streams
      was my worst brain-fart to date.
      
      Instead, we should check from the Superspeed
      Endpoint Companion Descriptor if the endpoint
      has requested streams. For that we need a little
      re-factoring but it is now correct.
      Debugged-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      c90bfaec
    • F
      usb: dwc3: workaround: missing disconnect event · df62df56
      Felipe Balbi 提交于
      DWC3 revisions <1.88a have an issue which would
      case a missing Disconnect event if cable is
      disconnected while there's a Setup packet
      pending the FIFO.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      df62df56
    • F
      usb: dwc3: workaround: missing USB3 Reset event · 05870c5b
      Felipe Balbi 提交于
      DWC3 revisions <1.90a have an issue which would cause
      a missing USB3 Reset event. In such cases, it's
      suggested that we follow the steps of a normal
      USB3 Reset on Connection Done Event.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      05870c5b
    • F
      usb: dwc3: workaround: U1/U2 -> U0 transiton · fae2b904
      Felipe Balbi 提交于
      RTL revisions <1.83a have an issue where, depending
      on the link partner, the USB link might do multiple
      entry/exit of low power states before a transfer
      takes place causing degraded throughput.
      
      The suggested workaround is to clear bits
      12:9 of DCTL register if we see a transition
      from U1|U2 to U0 and only re-enable that on
      a transfer complete IRQ and we have no pending
      transfers on any of the enabled endpoints.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      fae2b904
    • S
      usb: dwc3: gadget: return early in dwc3_cleanup_done_reqs() · d39ee7be
      Sebastian Andrzej Siewior 提交于
      This patch avoids the compiler spitting out the following warning:
      |drivers/usb/dwc3/gadget.c:1304: warning: 'trb' is used uninitialized \
      	in this function
      
      This is only uninitialized if the list of to-cleanup TRBs is empty which
      should not be the case because we call this functions once a transfer
      completed so it should be on list.
      
      In order to make the warning disappear we return early. This should
      never happen and the WARN_ON_ONCE(1) is there in case it happens
      so we can investigate what went wrong.
      Signed-off-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      d39ee7be
    • F
      usb: dwc3: fix few coding style problems · 25b8ff68
      Felipe Balbi 提交于
      There were a few coding style issues with this driver
      which are now fixed:
      
      drivers/usb/dwc3/debugfs.c:48: WARNING: Use #include \
      	<linux/uaccess.h> instead of <asm/uaccess.h>
      drivers/usb/dwc3/debugfs.c:484: ERROR: space required \
      	before the open brace '{'
      drivers/usb/dwc3/ep0.c:261: WARNING: line over 80 characters
      drivers/usb/dwc3/ep0.c:287: WARNING: suspect code indent \
      	for conditional statements (16, 23)
      drivers/usb/dwc3/gadget.c:749: WARNING: line over 80 characters
      drivers/usb/dwc3/gadget.c:1267: WARNING: line over 80 characters
      drivers/usb/dwc3/gadget.h:116: WARNING: line over 80 characters
      drivers/usb/dwc3/io.h:42: WARNING: Use #include \
      	<linux/io.h> instead of <asm/io.h>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      25b8ff68