aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLi Jun <b47624@freescale.com>2014-05-16 15:15:34 -0400
committerLi Jun <B47624@freescale.com>2014-06-26 04:50:20 -0400
commit39f8b82efe098d1ba79d2c73e2074cf63f9d73a8 (patch)
treee1deb716ff556153902a04d6ddad19f5aa9d2ad6
parent1cdff41f78377a5c318013f7baa9c56880a56595 (diff)
ENGR00319720-4 usb: common: otg-fsm: clear host_request_flag when leave host state.
clear host_request_flag when otg leaves host state. Signed-off-by: Li Jun <b47624@freescale.com>
-rw-r--r--drivers/usb/common/usb-otg-fsm.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/common/usb-otg-fsm.c b/drivers/usb/common/usb-otg-fsm.c
index 83f7b790ad19..76611f8c589f 100644
--- a/drivers/usb/common/usb-otg-fsm.c
+++ b/drivers/usb/common/usb-otg-fsm.c
@@ -84,6 +84,8 @@ void otg_leave_state(struct otg_fsm *fsm, enum usb_otg_state old_state)
84 fsm->b_ase0_brst_tmout = 0; 84 fsm->b_ase0_brst_tmout = 0;
85 break; 85 break;
86 case OTG_STATE_B_HOST: 86 case OTG_STATE_B_HOST:
87 if (fsm->otg->gadget)
88 fsm->otg->gadget->host_request_flag = 0;
87 break; 89 break;
88 case OTG_STATE_A_IDLE: 90 case OTG_STATE_A_IDLE:
89 fsm->adp_prb = 0; 91 fsm->adp_prb = 0;
@@ -98,6 +100,8 @@ void otg_leave_state(struct otg_fsm *fsm, enum usb_otg_state old_state)
98 break; 100 break;
99 case OTG_STATE_A_HOST: 101 case OTG_STATE_A_HOST:
100 otg_del_timer(fsm, A_WAIT_ENUM); 102 otg_del_timer(fsm, A_WAIT_ENUM);
103 if (fsm->otg->gadget)
104 fsm->otg->gadget->host_request_flag = 0;
101 break; 105 break;
102 case OTG_STATE_A_SUSPEND: 106 case OTG_STATE_A_SUSPEND:
103 otg_del_timer(fsm, A_AIDL_BDIS); 107 otg_del_timer(fsm, A_AIDL_BDIS);