summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Brownell <david-b@pacbell.net>2006-08-30 22:24:56 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2006-09-27 20:58:56 +0200
commit729ed6d502b45fd3b5c3b21c3ceaa63a8fe7cc43 (patch)
tree2bbf684c8be54c4cbd1517e5d08ce185fa3f02bd
parentusbmon: don't call mon_dmapeek if DMA isn't being used (diff)
downloadlinux-729ed6d502b45fd3b5c3b21c3ceaa63a8fe7cc43.tar.xz
linux-729ed6d502b45fd3b5c3b21c3ceaa63a8fe7cc43.zip
USB: ethernet gadget avoids zlps for musb_hdrc
For systems using the Mentor HDRC controllers we get better TX DMA throughput if we can avoid falling back to PIO to write zero length packets ... so tell the driver to avoid ZLPs. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/gadget/ether.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c
index 1cc3c0227d10..366dc0a9e52c 100644
--- a/drivers/usb/gadget/ether.c
+++ b/drivers/usb/gadget/ether.c
@@ -2230,6 +2230,9 @@ eth_bind (struct usb_gadget *gadget)
if (gadget_is_pxa (gadget)) {
/* pxa doesn't support altsettings */
cdc = 0;
+ } else if (gadget_is_musbhdrc(gadget)) {
+ /* reduce tx dma overhead by avoiding special cases */
+ zlp = 0;
} else if (gadget_is_sh(gadget)) {
/* sh doesn't support multiple interfaces or configs */
cdc = 0;