u-boot/drivers/usb/host
Ran Wang 621ed49d3a usb: xhci: fix lack of short packet event trb handling
For bulk IN transfer, the codes will set ISP flag to request event TRB
being generated by xHC for the case of short packet. So when encountering
buffer-cross-64K-boundary (which we will divide payload and enqueuqe
more than 1 transfer TRB), and the first TRB ends up with a short packet
condition it will trigger an short packet code transfer event per that
flag and cause more than 1 event TRB generated for this transfer.

However, current codes will only handle the first transfer event TRB
then mark current transfer completed, causing next transfer
failure due to event TRB mis-match.

Such issue has been observed on some Layerscape platforms (LS1028A,
LS1088A, etc) with USB ethernet device.

This patch adds a loop to make sure the event TRB for last transfer TRB
has been handled in time.

Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-12-16 10:27:09 +01:00
..
Kconfig usb: xhci: octeon: Add DWC3 glue layer for Octeon 2020-10-07 20:25:57 +02:00
Makefile usb: xhci: octeon: Add DWC3 glue layer for Octeon 2020-10-07 20:25:57 +02:00
dwc2.c usb: dwc2: Fix not calling dev_xxx with a device 2020-09-30 08:53:52 -04:00
dwc2.h
dwc3-octeon-glue.c usb: dwc3: Include device_compat.h in dwc3-octeon-glue.c 2020-10-16 09:44:27 -04:00
dwc3-of-simple.c
dwc3-sti-glue.c treewide: Update email address Patrick Delaunay and Patrice Chotard 2020-12-09 10:57:50 +01:00
ehci-armada100.c
ehci-atmel.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ehci-exynos.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ehci-faraday.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-fsl.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ehci-generic.c dm: add cells_count parameter in *_count_phandle_with_args 2020-10-06 09:07:54 -06:00
ehci-hcd.c usb: host: ehci-hcd: change trace level for phy errors managed by uclass 2020-09-08 08:46:32 -04:00
ehci-marvell.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ehci-msm.c
ehci-mx5.c treewide: convert (void *)devfdt_get_addr() to dev_read_addr_ptr() 2020-07-25 14:46:57 -06:00
ehci-mx6.c treewide: convert (void *)devfdt_get_addr() to dev_read_addr_ptr() 2020-07-25 14:46:57 -06:00
ehci-mxc.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-mxs.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-omap.c treewide: convert (void *)devfdt_get_addr() to dev_read_addr_ptr() 2020-07-25 14:46:57 -06:00
ehci-pci.c
ehci-rmobile.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-spear.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-tegra.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ehci-vct.c
ehci-vf.c treewide: convert (void *)devfdt_get_addr() to dev_read_addr_ptr() 2020-07-25 14:46:57 -06:00
ehci-zynq.c treewide: convert devfdt_get_addr_ptr() to dev_read_addr_ptr() 2020-08-22 08:53:37 -06:00
ehci.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
ohci-at91.c
ohci-da8xx.c dm: add cells_count parameter in *_count_phandle_with_args 2020-10-06 09:07:54 -06:00
ohci-ep93xx.c
ohci-generic.c dm: add cells_count parameter in *_count_phandle_with_args 2020-10-06 09:07:54 -06:00
ohci-hcd.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ohci-lpc32xx.c
ohci-pci.c
ohci.h usb: ohci: Add header file for ARCH_DMA_MINALIGN 2020-06-02 13:06:10 -04:00
r8a66597-hcd.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
r8a66597.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
sl811-hcd.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
sl811.h
usb-sandbox.c
usb-uclass.c usb: ci_udc: Add function to remove usb device 2020-09-01 14:47:43 +02:00
utmi-armada100.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
xhci-brcm.c
xhci-dwc3.c usb: xhci: xhci-dwc3.c: Use dev_remap_addr() instead of dev_get_addr() 2020-10-07 20:25:57 +02:00
xhci-exynos5.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
xhci-fsl.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
xhci-mem.c usb: xhci: avoid type conversion of void * 2020-10-20 00:48:58 +02:00
xhci-mtk.c usb: xhci: Include device_compat.h 2020-10-16 09:44:27 -04:00
xhci-mvebu.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
xhci-omap.c
xhci-pci.c
xhci-rcar-r8a779x_usb3_v3.h
xhci-rcar.c usb: xhci-rcar: Add support for R8A774A1 SoC 2020-10-01 19:43:05 +02:00
xhci-ring.c usb: xhci: fix lack of short packet event trb handling 2020-12-16 10:27:09 +01:00
xhci.c usb: xhci: Include device_compat.h 2020-10-16 09:44:27 -04:00