Hi Felipe, Here are the patches for enabling DMA Mode1 for different platforms and also to have DMA programming more or less common. These patches are based and apply cleanly on http://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git Tested and working on: ux500 platform Platforms using musbhsdma : Enabled support for mode1 but not tested. The short_not_ok check for enabling mode1 is removed. The dma transfer residue function is implemented as mentioned in the MUSB spec. As the ifdef's are removed this patch could cause regressions. Platforms using tusb6010_omap : New dma functions added are based on drivers/dma/omap-dma.c. tusb will continue to work in mode0. For unknown RX length, the dma transfer residue function is required (which is already implemented as part of drivers/dma/omap-dma.c) but we couldn't port it here as implementation was not clear. Mode1 can be enabled for tusb once this is implemented. This is not tested as well. TODO: cppi_dma - unchanged tusb dma transfer residue function supriya karanth (4): usb: musb: Enable DMA Mode1 for device mode RX usb: musb: musbhsdma: Enable DMA Mode1 for device mode RX usb: musb: tusb6010: Add DMA Mode1 support for device mode RX usb: musb: ux500: Enable DMA Mode1 for device mode RX drivers/usb/musb/musb_dma.h | 12 ++ drivers/usb/musb/musb_gadget.c | 215 ++++++++++++++++++++++---------------- drivers/usb/musb/musb_gadget.h | 3 + drivers/usb/musb/musbhsdma.c | 72 +++++++++++++ drivers/usb/musb/tusb6010_omap.c | 67 ++++++++++++ drivers/usb/musb/ux500_dma.c | 183 +++++++++++++++++++++++++++++++- 6 files changed, 457 insertions(+), 95 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html