Datasheet

SAM3X / SAM3A [DATASHEET]
Atmel-11057C-ATARM-SAM3X-SAM3A-Datasheet_23-Mar-15
1078
39.5.3.2 Power-On and Reset
Figure 39-22 on page 1078 describes the UOTGHS host mode main states.
Figure 39-22. Host Mode States
After a hardware reset, the UOTGHS host mode is in the Reset state.
When the UOTGHS is enabled (UOTGHS_CTRL.USBE is one) in host mode (UOTGHS_SR.ID is zero), it goes to
the Idle state. In this state, the controller waits for a device connection with a minimal power consumption. The
USB pad should be in the Idle state. Once a device is connected, the macro enters the Ready state, which does
not require the USB clock to be activated.
The controller enters the Suspend state when the USB bus is in a “Suspend” state, i.e., when the host mode does
not generate the “Start of Frame (SOF)”. In this state, the USB consumption is minimal. The host mode exits the
Suspend state when starting to generate the SOF over the USB line.
39.5.3.3 Device Detection
A device is detected by the UOTGHS host mode when D+ or D- is no longer tied low, i.e., when the device D+ or
D- pull-up resistor is connected. To enable this detection, the host controller has to provide the VBus power supply
to the device by writing a one to the UOTGHS_SFR.VBUSRQS bit.
The device disconnection is detected by the host controller when both D+ and D- are pulled down.
39.5.3.4 USB Reset
The UOTGHS sends a USB bus reset when the user write a one to the Send USB Reset bit in the Host General
Control register (UOTGHS_HSTCTRL.RESET). The USB Reset Sent Interrupt bit in the Host Global Interrupt
Status register (UOTGHS_HSTISR.RSTI) is set when the USB reset has been sent. In this case, all pipes are
disabled and de-allocated.
If the bus was previously in a “Suspend” state (the Start of Frame Generation Enable
(UOTGHS_HSTCTRL.SOFE) bit is zero), the UOTGHS automatically switches to the “Resume” state, the Host
Wake-Up Interrupt (UOTGHS_HSTISR.HWUPI) bit is set and the UOTGHS_HSTCTRL.SOFE bit is set in order to
generate SOFs or micro SOFs immediately after the USB reset.
At the end of the reset, the user should check the UOTGHS_SR.SPEED field to know the speed running according
to the peripheral capability (LS.FS/HS)
Ready
Idle
Device
Disconnection
<any
other
state>
Device
Connection
Macro off
Clock stopped
Device
Disconnection
Suspend
SOFE = 1
SOFE = 0