linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/6] usb: dwc3: handle non maxpacket aligned transfers > 512
@ 2015-07-24  6:47 Kishon Vijay Abraham I
  2015-07-24  6:47 ` [PATCH v2 1/6] usb: dwc3: ep0: Fix mem corruption on OUT transfers of more than 512 bytes Kishon Vijay Abraham I
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Kishon Vijay Abraham I @ 2015-07-24  6:47 UTC (permalink / raw)
  To: balbi, linux-usb, linux-omap, linux-kernel; +Cc: gregkh, kishon, nsekhar

Patch series first fixes memory corruption and then adds support to
handle non maxpacket aligned transfers.

Patch series adds support to handle non maxpacket aligned transfers
greater than bounce buffer size (512). It first adds chained TRB
support and then uses it to handle non maxpacket aligned transfers
greater than bounce buffer size.

Also included a cleanup patch to use 'roundup' macro.

Changes from v1:
*) Included the patch to fix memory corruption in this series. (Also
   marked it for stable release).

Non maxpacket aligned transfers can be initiated by
"./testusb -t 14 -c 1 -s 520 -v 1"

Before this series: (Causes memory corruption)
unknown speed	/dev/bus/usb/010/009	0
/dev/bus/usb/010/009 test 14,    0.219638 secs

After the 1st patch of this series:
unknown speed   /dev/bus/usb/001/018    0
/dev/bus/usb/001/018 test 14 --> 110 (Connection timed out)

After this series: (No memory corruption)
unknown speed   /dev/bus/usb/001/023    0
/dev/bus/usb/001/023 test 14,    0.000486 secs

Tested this patch using USB3 Gen X CV (ch9 tests: usb2 and usb3,
link layer testing and MSC tests) and using USB2 X CV (ch9 tests,
MSC tests) and verified this doesn't cause additional failures.

Lecroy compliance tests fail even without this patch series so
deferred testing it.

Kishon Vijay Abraham I (6):
  usb: dwc3: ep0: Fix mem corruption on OUT transfers of more than 512
    bytes
  usb: dwc3: ep0: use _roundup_ to calculate the transfer size
  usb: dwc3: ep0: preparation for handling non maxpacket aligned
    transfers > 512
  usb: dwc3; ep0: Modify _dwc3_ep0_start_trans_ API to take 'chain'
    parameter
  usb: dwc3: ep0: Add chained TRB support
  usb: dwc3: ep0: handle non maxpacket aligned transfers > 512

 drivers/usb/dwc3/ep0.c    |   92 ++++++++++++++++++++++++++++++++-------------
 drivers/usb/dwc3/gadget.c |    2 +-
 2 files changed, 67 insertions(+), 27 deletions(-)

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2015-07-24 12:51 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-24  6:47 [PATCH v2 0/6] usb: dwc3: handle non maxpacket aligned transfers > 512 Kishon Vijay Abraham I
2015-07-24  6:47 ` [PATCH v2 1/6] usb: dwc3: ep0: Fix mem corruption on OUT transfers of more than 512 bytes Kishon Vijay Abraham I
2015-07-24  6:47 ` [PATCH v2 2/6] usb: dwc3: ep0: use _roundup_ to calculate the transfer size Kishon Vijay Abraham I
2015-07-24  6:47 ` [PATCH v2 3/6] usb: dwc3: ep0: preparation for handling non maxpacket aligned transfers > 512 Kishon Vijay Abraham I
2015-07-24  6:47 ` [PATCH v2 4/6] usb: dwc3; ep0: Modify _dwc3_ep0_start_trans_ API to take 'chain' parameter Kishon Vijay Abraham I
     [not found]   ` <1437720436-4261-5-git-send-email-kishon-l0cyMroinI0@public.gmane.org>
2015-07-24 12:51     ` Sergei Shtylyov
2015-07-24  6:47 ` [PATCH v2 5/6] usb: dwc3: ep0: Add chained TRB support Kishon Vijay Abraham I
2015-07-24  6:47 ` [PATCH v2 6/6] usb: dwc3: ep0: handle non maxpacket aligned transfers > 512 Kishon Vijay Abraham I
2015-07-24  6:49 ` [RESEND PATCH v2 1/6] usb: dwc3: ep0: Fix mem corruption on OUT transfers of more than 512 bytes Kishon Vijay Abraham I

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).