linux/drivers/usb/musb
Ming Lei e7379aaa5c usb: musb: gadget: fix ZLP sending in musb_g_tx(v1)
This patch fixes the problem reported by Sergei:

>how come? we need to send ZLP before giving back the request.
>Well, look at the code ionce again. We need to send ZLP *after*
>request->actual == request->length, but as the check is inserted
>after the ZLP send, ZLP *may* be sent once the first DMA completes,
>not the last.

The patch also has been discussed on the link below:

	http://marc.info/?t=128454814900001&r=1&w=2

Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Reported-by: Sergei Shtylyov <sshtylyov@mvista.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-22 10:21:56 -07:00
..
blackfin.c MUSB: Blackfin: remove musb_platform_{suspend|resume}() 2010-05-20 13:21:35 -07:00
blackfin.h USB: musb: workaround Blackfin FIFO anomalies 2009-12-23 11:34:19 -08:00
cppi_dma.c USB: musb: suppress warning about unused flags 2010-10-22 10:21:55 -07:00
cppi_dma.h headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
da8xx.c usb: musb: introduce DA8xx/OMAP-L1x glue layer 2010-10-22 10:21:52 -07:00
davinci.c usb: musb: Set transceiver interface type 2010-05-20 13:21:32 -07:00
davinci.h USB: musb: partial DaVinci dm355 support 2009-03-24 16:20:36 -07:00
Kconfig usb: musb: introduce DA8xx/OMAP-L1x glue layer 2010-10-22 10:21:52 -07:00
Makefile usb: musb: introduce DA8xx/OMAP-L1x glue layer 2010-10-22 10:21:52 -07:00
musb_core.c usb: musb: ignore spurious SESSREQ interrupts 2010-10-22 10:21:55 -07:00
musb_core.h usb: musb: introduce DA8xx/OMAP-L1x glue layer 2010-10-22 10:21:52 -07:00
musb_debug.h USB: musb: make DBG() calls actually depend on CONFIG_USB_MUSB_DEBUG 2010-10-22 10:21:52 -07:00
musb_debugfs.c usb: musb_debugfs: don't use the struct file private_data field with seq_files 2010-09-20 16:04:56 -07:00
musb_dma.h USB: musb: add work around for Blackfin anomaly 05000456 2009-12-11 11:55:24 -08:00
musb_gadget_ep0.c usb: musb: gadget: restart request on clearing endpoint halt 2010-09-24 11:05:01 -07:00
musb_gadget.c usb: musb: gadget: fix ZLP sending in musb_g_tx(v1) 2010-10-22 10:21:56 -07:00
musb_gadget.h usb: musb: support ISO high bandwidth for gadget mode 2010-10-22 10:21:53 -07:00
musb_host.c usb: musb: host: support DMA transfers greater than max channel length 2010-10-22 10:21:54 -07:00
musb_host.h musb: add high bandwidth ISO support 2009-06-15 21:44:41 -07:00
musb_io.h USB: musb: Blackfin provides read/write I/O accessor in header files 2009-01-07 10:00:08 -08:00
musb_regs.h usb: musb: add ulpi access operations 2010-05-20 13:21:36 -07:00
musb_virthub.c USB: convert usb_hcd bitfields into atomic flags 2010-08-10 14:35:37 -07:00
musbhsdma.c usb: musb: musbhsdma: increase max_len to 1MB 2010-10-22 10:21:53 -07:00
musbhsdma.h usb: musb: hsdma: use musb_read/writel 2010-05-20 13:21:32 -07:00
omap2430.c USB: musb: Kill board specific pinmux from driver file 2010-08-10 14:35:39 -07:00
omap2430.h USB: musb: get rid of omap_readl/writel 2010-03-02 14:54:38 -08:00
tusb6010_omap.c usb: Fix tusb6010 for DMA API 2010-04-30 09:25:09 -07:00
tusb6010.c USB: musb: tusb6010: fix compile error with n8x0_defconfig 2010-07-26 12:00:59 -07:00
tusb6010.h USB: musb: Remove my email address from few musb related drivers 2009-04-23 14:15:27 -07:00