MLK-9617-13 usb: core: otg: do quick bus reset after clear connection change
This patch changes bus reset time for B host enumuration, from entering B host to the time clear USB_PORT_FEAT_C_CONNECTION, a random time after B host detect port change for A peripheral connection may not work. Signed-off-by: Li Jun <b47624@freescale.com> (cherry picked from commit b87d3bb0672ebcfb29c7db8708c586b2d38558d1) (cherry picked from commit f3ec1858d5293de28476996a59287b7adb8e9cd2)pull/10/head
parent
037a00426c
commit
a355897936
|
@ -289,8 +289,6 @@ static int otg_set_state(struct otg_fsm *fsm, enum usb_otg_state new_state)
|
|||
otg_loc_conn(fsm, 0);
|
||||
otg_loc_sof(fsm, 1);
|
||||
otg_set_protocol(fsm, PROTO_HOST);
|
||||
usb_bus_start_enum(fsm->otg->host,
|
||||
fsm->otg->host->otg_port);
|
||||
otg_start_hnp_polling(fsm);
|
||||
break;
|
||||
case OTG_STATE_A_IDLE:
|
||||
|
|
|
@ -1116,6 +1116,10 @@ static void hub_activate(struct usb_hub *hub, enum hub_activation_type type)
|
|||
need_debounce_delay = true;
|
||||
usb_clear_port_feature(hub->hdev, port1,
|
||||
USB_PORT_FEAT_C_CONNECTION);
|
||||
#ifdef CONFIG_USB_OTG
|
||||
if (hdev->bus->is_b_host)
|
||||
usb_bus_start_enum(hdev->bus, port1);
|
||||
#endif
|
||||
}
|
||||
if (portchange & USB_PORT_STAT_C_ENABLE) {
|
||||
need_debounce_delay = true;
|
||||
|
|
Loading…
Reference in New Issue