A_IDLE
A_WAIT_VFALL
A_WAIT_VRISE
A_PERIPHERAL
A_SUSPEND
B_IDLE
A_WAIT_BCON
A_HOST
Figure 42-101. Dual role A device flow diagram
Table 42-139. State descriptions for the dual role A device flow
State
Action
Response
A_IDLE
If ID Interrupt.
The cable has been unplugged or a Type B cable has been
attached. The device now acts as a Type B device.
Go to B_IDLE
If the A application wants to use the bus or if the B device is doing
an SRP as indicated by an A_SESS_VLD Interrupt or Attach or Port
Status Change Interrupt check data line for 5 –10 msec pulsing.
Go to A_WAIT_VRISE
Turn on DRV_VBUS
A_WAIT_VRISE
If ID Interrupt or if A_VBUS_VLD is false after 100 msec
The cable has been changed or the A device cannot support the
current required from the B device.
Go to A_WAIT_VFALL
Turn off DRV_VBUS
If A_VBUS_VLD interrupt
Go to A_WAIT_BCON
A_WAIT_BCON
After 200 ms without Attach or ID Interrupt. (This could wait forever
if desired.)
Go to A_WAIT_FALL
Turn off DRV_VBUS
A_VBUS_VLD Interrupt and B device attaches
Go to A_HOST
Turn on Host mode
A_HOST
Enumerate Device determine OTG Support.
If A_VBUS_VLD/ Interrupt or A device is done and does not think it
wants to do something soon or the B device disconnects
Go to A_WAIT_VFALL
Turn off Host mode
Turn off DRV_VBUS
If the A device is finished with session or if the A device wants to
allow the B device to take bus.
Go to A_SUSPEND
ID Interrupt or the B device disconnects
Go to A_WAIT_BCON
Table continues on the next page...
On-The-Go operation
K22F Sub-Family Reference Manual , Rev. 3, 7/2014
1032
Freescale Semiconductor, Inc.