usb: musb: fix otg default state
Right after the musb_hdrc driver is loaded, the otg default state is a_idle, and Mode=Host, which are set by musb_host_setup(). This causes the following kernel message during musb gadget enumeration. CAUTION: musb: Babble Interrupt Occurred This patch sets the otg default state to b_idle, and its Mode to Peripheral. It has been validated on TI AM335x GP EVM USB0 port with g_zero. Signed-off-by: Bin Liu <b-liu@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Родитель
d3675e3a48
Коммит
1374a430f8
|
@ -1790,6 +1790,10 @@ int musb_gadget_setup(struct musb *musb)
|
|||
musb->g.max_speed = USB_SPEED_HIGH;
|
||||
musb->g.speed = USB_SPEED_UNKNOWN;
|
||||
|
||||
MUSB_DEV_MODE(musb);
|
||||
musb->xceiv->otg->default_a = 0;
|
||||
musb->xceiv->state = OTG_STATE_B_IDLE;
|
||||
|
||||
/* this "gadget" abstracts/virtualizes the controller */
|
||||
musb->g.name = musb_driver_name;
|
||||
musb->g.is_otg = 1;
|
||||
|
|
Загрузка…
Ссылка в новой задаче