USB on-the-go high-speed (OTG_HS)
RM0090
1524/1731
DocID018909 Rev 11
35.13.9 OTG
programming
model
The OTG_HS controller is an OTG device supporting HNP and SRP. When the core is
connected to an “A” plug, it is referred to as an A-device. When the core is connected to a
“B” plug it is referred to as a B-device. In host mode, the OTG_HS controller turns off V
BUS
to conserve power. SRP is a method by which the B-device signals the A-device to turn on
V
BUS
power. A device must perform both data-line pulsing and V
BUS
pulsing, but a host can
detect either data-line pulsing or V
BUS
pulsing for SRP. HNP is a method by which the B-
device negotiates and switches to host role. In Negotiated mode after HNP, the B-device
suspends the bus and reverts to the device role.
A-device session request protocol
The application must set the SRP-capable bit in the Core USB configuration register. This
enables the OTG_HS controller to detect SRP as an A-device.
Figure 428. A-device SRP
1. DRV_VBUS = V
BUS
drive signal to the PHY
VBUS_VALID = V
BUS
valid signal from PHY
A_VALID = A-device V
BUS
level signal to PHY
DP = Data plus line
DM = Data minus line
a
i156
8
1b
DRV_VBU
S
VBU
S
_VALID
A_VALID
OTG_H
S
_F
S
_DP
OTG_H
S
_F
S
_DM
Sus
pend
V
BU
S
p
u
l
s
ing
D
a
t
a
line p
u
l
s
ing
Connect
1
6
2
5
3
4
7
Low