]> git.sur5r.net Git - u-boot/commitdiff
musb: am335x: disable bulk split-combine feature
authorBin Liu <b-liu@ti.com>
Thu, 21 Mar 2013 05:27:48 +0000 (05:27 +0000)
committerTom Rini <trini@ti.com>
Mon, 8 Apr 2013 15:29:04 +0000 (11:29 -0400)
On TI AM335x devices, MUSB has bulk split/combine feature enabled
in the ConfigData register, but the current MUSB driver does not
support it yet. Therefore, disable the feature for now, until the
driver adds the support.

One usecase which is broken because of this feature is that Ether
gadget stops working in Fullspeed mode (by un-defining
CONFIG_USB_GADGET_DUALSPEED)

After desabled this feature, MUSB driver send packets in proper size
(no more than 64 bytes) in Fullspeed mode.

This has been validated with Ether gadget in Fullspeed mode on AM335x
EVM.

Signed-off-by: Bin Liu <b-liu@ti.com>
drivers/usb/musb-new/musb_core.c
include/configs/am335x_evm.h

index 040a5c0f0f7df34758fc05db13a2f467f2cc661a..aa647e6a3073e04fc01c01e3ff2586ae9b8928d9 100644 (file)
@@ -1421,6 +1421,7 @@ static int __devinit musb_core_init(u16 musb_type, struct musb *musb)
                strcat(aInfo, ", dyn FIFOs");
                musb->dyn_fifo = true;
        }
+#ifndef CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
        if (reg & MUSB_CONFIGDATA_MPRXE) {
                strcat(aInfo, ", bulk combine");
                musb->bulk_combine = true;
@@ -1429,6 +1430,10 @@ static int __devinit musb_core_init(u16 musb_type, struct musb *musb)
                strcat(aInfo, ", bulk split");
                musb->bulk_split = true;
        }
+#else
+       musb->bulk_combine = false;
+       musb->bulk_split = false;
+#endif
        if (reg & MUSB_CONFIGDATA_HBRXE) {
                strcat(aInfo, ", HB-ISO Rx");
                musb->hb_iso_rx = true;
index b7c443c573f0284a88b1fe582c656ce582044591..dbd5ef327b3698b1fcac929155b67d08d0423022 100644 (file)
 #define CONFIG_ARCH_MISC_INIT
 #define CONFIG_MUSB_GADGET
 #define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_MUSB_HOST
 #define CONFIG_AM335X_USB0