linux/drivers/usb/dwc2
Robert Baldyga b203d0a2e3 usb: dwc2/gadget: assign TX FIFO dynamically
Because we have not enough memory to have each TX FIFO of size at least
3072 bytes (the maximum single packet size with 3 transactions per
microframe), we create four FIFOs of lenght 1024, and four of length
3072 bytes, and assing them to endpoints dynamically according to
maxpacket size value of given endpoint.

Up to now there were initialized 16 TX FIFOs, but we use only 8 IN
endpoints, so we can split available memory for 8 FIFOs to have more
memory for each one.

It needed to do some small modifications in few places in code, because
there was assumption that TX FIFO numbers assigned to endpoints are the
same as the endpoint numbers, which is not true since we have dynamic
FIFO assigning.

Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-09-19 16:16:39 -07:00
..
core_intr.c usb: dwc2: handle the Host Port Interrupt when it occurs in device mode 2014-02-07 14:34:38 -08:00
core.c usb: dwc2: add 'mode' which based on Kconfig select or dts setting 2014-09-08 15:43:28 -07:00
core.h usb: dwc2/gadget: assign TX FIFO dynamically 2014-09-19 16:16:39 -07:00
gadget.c usb: dwc2/gadget: assign TX FIFO dynamically 2014-09-19 16:16:39 -07:00
hcd_ddma.c
hcd_intr.c usb: dwc2: make the scheduler handle excessive NAKs better 2014-09-11 15:39:22 -07:00
hcd_queue.c
hcd.c usb: dwc2: fix memory corruption in dwc2 driver 2014-02-04 12:59:14 -08:00
hcd.h
hw.h usb: dwc2: add defines to support s3c-hsotg driver 2014-04-24 13:12:43 -07:00
Kconfig Revert "usb: dwc2: Update Kconfig to support dual-role" 2014-09-11 13:45:13 -07:00
Makefile Revert "usb: dwc2: Update Kconfig to support dual-role" 2014-09-11 13:45:13 -07:00
pci.c
platform.c Revert "usb: dwc2: move "samsung,s3c6400-hsotg" into common platform" 2014-09-11 13:48:43 -07:00