linux/drivers/usb/gadget/udc
Aaro Koskinen 3f91484f6c USB: omap_udc: DMA: Don't enable burst 4 mode
Commit 65111084c6 ("USB: more omap_udc updates (dma and omap1710)")
added setting for DMA burst 4 mode. But I think this should be undone for
two reasons:

- It breaks DMA on 15xx boards - transfers just silently stall.

- On newer OMAP1 boards, like Nokia 770 (omap1710), there is no measurable
performance impact when testing TCP throughput with g_ether with large
15000 byte MTU size.

It's also worth noting that when the original change was made, the
OMAP_DMA_DATA_BURST_4 handling in arch/arm/plat-omap/dma.c was broken, and
actually resulted in the same as the OMAP_DMA_DATA_BURST_DIS i.e. burst
disabled. This was fixed not until a couple kernel releases later in an
unrelated commit 1a8bfa1eb9 ("[ARM] 3142/1: OMAP 2/5: Update files
common to omap1 and omap2").

So based on this it seems there was never really a very good reason to
enable this burst mode in omap_udc, so remove it now to allow 15xx DMA
to work again (it provides 2x throughput compared to PIO mode).

Fixes: 65111084c6 ("[PATCH] USB: more omap_udc updates (dma and omap1710)")
Cc: stable <stable@kernel.org>
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Link: https://patch.msgid.link/ad06qHLclWHeSGnV@darkstar.musicnaut.iki.fi
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-04-27 09:49:28 -06:00
..
aspeed-vhub Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
bdc usb: gadget: bdc: validate status-report endpoint indices 2026-03-30 16:47:45 +02:00
cdns2 treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
amd5536udc_pci.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
amd5536udc.h
aspeed_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
at91_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
at91_udc.h
atmel_usba_udc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
atmel_usba_udc.h
bcm63xx_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
core.c usb: gadget: udc: update outdated comment for renamed usb_gadget_udc_start() 2026-03-30 16:50:09 +02:00
dummy_hcd.c usb: gadget: dummy_hcd: fix premature URB completion when ZLP follows partial transfer 2026-03-18 16:19:33 +01:00
fsl_qe_udc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fsl_qe_udc.h
fsl_udc_core.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fsl_usb2_udc.h usb: gadget: fsl-udc: Replace custom log wrappers by dev_{err,warn,dbg,vdbg} 2024-03-05 13:29:03 +00:00
goku_udc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
goku_udc.h
gr_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
gr_udc.h
Kconfig usb: Remove orphaned UDC drivers 2025-04-11 16:11:25 +02:00
lpc32xx_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
m66592-udc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
m66592-udc.h
Makefile usb: Remove orphaned UDC drivers 2025-04-11 16:11:25 +02:00
max3420_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
net2280.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
net2280.h
omap_udc.c USB: omap_udc: DMA: Don't enable burst 4 mode 2026-04-27 09:49:28 -06:00
omap_udc.h
pch_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
pxa25x_udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
pxa25x_udc.h
pxa27x_udc.c USB: pxa27x_udc: check return value of clk_enable 2026-03-18 16:03:34 +01:00
pxa27x_udc.h
r8a66597-udc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
r8a66597-udc.h
renesas_usb3.c usb: gadget: renesas_usb3: validate endpoint index in standard request handlers 2026-04-07 13:48:30 +02:00
renesas_usbf.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
rzv2m_usb3drd.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
snps_udc_core.c usb: gadget: udc: Use safer strscpy() instead of strcpy() 2026-03-11 15:39:04 +01:00
snps_udc_plat.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
tegra-xudc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
trace.c
trace.h usb: udc: Add trace event for usb_gadget_set_state 2025-09-12 14:03:14 +02:00
udc-xilinx.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00