Zynq UltraScale+ Devices Register Reference > Module Summary > USB3_XHCI Module > GUSB2PHYCFG (USB3_XHCI) Register

GUSB2PHYCFG (USB3_XHCI) Register

GUSB2PHYCFG (USB3_XHCI) Register Description

Register NameGUSB2PHYCFG
Relative Address0x000000C200
Absolute Address 0x00FE20C200 (USB3_0_XHCI)
0x00FE30C200 (USB3_1_XHCI)
Width32
TypemixedMixed types. See bit-field details.
Reset Value0x00000000
DescriptionGlobal USB2 PHY Configuration Register
The application must program this register before starting any transactions on either the SoC bus or the USB.
In Device-only configurations, only one register is needed.
In Host mode, per-port registers are implemented.

GUSB2PHYCFG (USB3_XHCI) Register Bit-Field Summary

Field NameBitsTypeReset ValueDescription
PHYSOFTRST31rwNormal read/write0UTMI PHY Soft Reset (PHYSoftRst)
Causes the usb2phy_reset signal to be asserted to reset a UTMI PHY. Not applicable to ULPI because ULPI PHYs are reset via their FunctionControl.Reset register, and the core automatically writes to this register when the core is reset (vcc_reset_n, USBCMD.HCRST, DCTL.SoftReset, or GCTL.SoftReset)
U2_FREECLK_EXISTS30rwNormal read/write0U2_FREECLK_EXISTS
Specifies whether your USB 2.0 PHY provides a free-running PHY clock, which is active when the clock control input is active.
If your USB 2.0 PHY provides a free-running PHY clock, it must be connected to the utmi_clk[0] input. The remaining utmi_clk[n] must be connected to the respective port clocks. The core uses the Port-0 clock for generating the internal mac2 clock.
- 1b0: USB 2.0 free clock does not exist
- 1b1: USB 2.0 free clock exists
Note: When the core is configured as device-only (DWC_USB3_MODE = 0), do not set this bit to 1.
ULPI_LPM_WITH_OPMODE_CHK29rwNormal read/write0ULPI_LPM_WITH_OPMODE_CHK
Support the LPM over ULPI without NOPID token to the ULPI PHY.
If this bit is set, the ULPI PHY is expected to qualify the EXT PID with OPMODE=2b00 for LPM and not treat it as a NOPID. Check with your PHY vendor about your PHY behavior. This bit is valid only when the DWC_USB3_HSPHY_INTERFACE parameter is 2 or 3.
- 1b0: A NOPID is sent before sending an EXTPID for LPM;
- 1b1: An EXTPID is sent without previously sending a NOPID;
Note: This bit is valid only in host mode. This bit should be 0 for
PHY.
HSIC_CON_WIDTH_ADJ28:27roRead-only0HSIC_CON_WIDTH_ADJ
This bit is used in the HSIC device mode of operation. By default, the connect duration for the HSIC device controller is thrice the strobe period. You can change this duration to 4, 5, or 6 times the strobe period by setting the value of this field to 1, 2, or 3. This value is added to the default connect duration.
INV_SEL_HSIC26roRead-only0INV_SEL_HSIC
The application driver uses this bit to control the HSIC enable/disable function. When set to 1, this bit overrides and functionally inverts the if_select_hsic input signal.
If {INV_SEL_HSIC, if_select_hsic} is:
- 00: HSIC Capability is disabled.
- 01: HSIC Capability is enabled.
- 10: HSIC Capability is enabled.
- 11: HSIC Capability is disabled.
If the controller operates as non-HSIC-capable, it can only connect to non-HSIC-capable PHYs. If it operates as HSIC-capable, it can connect to HSIC-capable PHYs.
This bit is reserved if the DWC_USB3_ENABLE_HSIC parameter is set to 0. When selecting the HSIC feature, set the host side to HSIC mode first, then set the device mode side. If the device side is set to HSIC mode first and if the host does not see a connection in HSIC mode, then you must de-select the device HSIC mode and select it again using the if_select_hsic setting or register bit GUSB2PHYCFGn[26] to ensure that the device can connect to the host.
Reserved25roRead-only0x0Reserved
LSTRD24:22rwNormal read/write0LS Turnaround Time (LSTRDTIM)
This field indicates the value of the Rx-to-Tx packet gap for LS devices. The encoding is as follows:
- 0: 2 bit times
- 1: 2.5 bit times
- 2: 3 bit times
- 3: 3.5 bit times
- 4: 4 bit times
- 5: 4.5 bit times
- 6: 5 bit times
- 7: 5.5 bit times
Note:
- This field is applicable only in Host mode.
- For normal operation (to work with most LS devices), set the default value of this field to 3h0 (2 bit times).
- The programmable LS device inter-packet gap and turnaround delays are provided to support some legacy LS devices that might require different delays than the default/fixed ones. For instance, the Open LS mouse requires 3 bit times of inter-packet gap to work correctly.
- Include your PHY delays when programming the LSIPD/LSTRDTIM values. For example, if your PHYs TxEndDelay in LS mode is 30 UTMI/ULPI CLKs, then subtract this delay (~1 LS bit time) from the devices delay requirement.
LSIPD21:19rwNormal read/write0LS Inter-Packet Time (LSIPD)
This field indicates the value of Tx-to-Tx packet gap for LS devices. The encoding is as follows:
- 0: 2 bit times
- 1: 2.5 bit times
- 2: 3 bit times
- 3: 3.5 bit times
- 4: 4 bit times
- 5: 4.5 bit times
- 6: 5 bit times
- 7: 5.5 bit times
Note:
- This field is applicable only in Host mode.
- For normal operation (to work with most LS devices), set the default value of this field to 3h2 (3 bit times).
- The programmable LS device inter-packet gap and turnaround delays are provided to support some legacy LS devices that might require different delays than the default/fixed ones. For instance, the AOpen LS mouse requires 3 bit times of inter-packet gap to work correctly.
- Include your PHY delays when programming the LSIPD/LSTRDTIM values. For example, if your PHYs TxEndDelay in LS mode is 30 UTMI/ULPI CLKs, then subtract this delay (~1 LS bit time) from the devices delay requirement.
ULPIEXTVBUSINDIACTOR18rwNormal read/write0ULPI External VBUS Indicator (ULPIExtVbusIndicator)
Indicates the ULPI PHY VBUS over-current indicator.
- 1b0: PHY uses an internal VBUS valid comparator.
- 1b1: PHY uses an external VBUS valid comparator.
Valid only when RTL parameter DWC_USB3_HSPHY_INTERFACE = 2 or 3
ULPIEXTVBUSDRV17rwNormal read/write0ULPI External VBUS Drive (ULPIExtVbusDrv)
Selects supply source to drive 5V on VBUS, in the ULPI PHY.
- 1b0: PHY drives VBUS with internal charge pump (default).
- 1b1: PHY drives VBUS with an external supply.
(Only when RTL parameter DWC_USB3_HSPHY_INTERFACE = 2 or 3)
Reserved16roRead-only0x0Reserved
ULPIAUTORES15rwNormal read/write0ULPI Auto Resume (ULPIAutoRes)
Sets the AutoResume bit in Interface Control register on the ULPI PHY.
- 1b0: PHY does not use the AutoResume feature.
- 1b1: PHY uses the AutoResume feature.
Valid only when RTL parameter DWC_USB3_HSPHY_INTERFACE = 2 or 3
Reserved14roRead-only0x0Reserved
USBTRDTIM13:10rwNormal read/write0USB 2.0 Turnaround Time (USBTrdTim)
Sets the turnaround time in PHY clocks.
Specifies the response time for a MAC request to the Packet FIFO Controller (PFC) to fetch data from the DFIFO (SPRAM).
The following are the required values for the minimum SoC bus frequency of 60 MHz. USB turnaround time is a critical certification criteria when using long cables and five hub levels.
The required values for this field:
- 4h5: When the MAC interface is 16-bit UTMI+.
- 4h9: When the MAC interface is 8-bit UTMI+/ULPI.
If SoC bus clock is less than 60 MHz, and USB turnaround time is not critical, this field can be set to a larger value.
Note: This field is valid only in device mode.
XCVRDLY 9rwNormal read/write0Transceiver Delay:
Enables a delay between the assertion of the UTMI/ULPI Transceiver Select signal (for HS) and the assertion of the TxValid signal during a HS Chirp.
When this bit is set to 1, a delay (of approximately 2.5 us) is introduced from the time when the Transceiver Select is set to 2b00 (HS) to the time the TxValid is driven to 0 for sending the chirp-K. This delay is required for some UTMI/ULPI PHYs.
Note:
- If you enable the hibernation feature when the device core comes out of power-off, you must re-initialize this bit with the appropriate value because the core does not save and restore this bit value during hibernation.
- This bit is valid only in device mode.
ENBLSLPM 8rwNormal read/write0Enable utmi_sleep_n and utmi_l1_suspend_n (EnblSlpM)
The application uses this bit to control utmi_sleep_n and utmi_l1_suspend_n assertion to the PHY in the L1 state.
- 1b0: utmi_sleep_n and utmi_l1_suspend_n assertion from the core is not transferred to the external PHY.
- 1b1: utmi_sleep_n and utmi_l1_suspend_n assertion from the core is transferred to the external PHY.
Note: This bit must be set high for Port0 if
PHY is used.
Note: In Device mode - Before issuing any device endpoint command when operating in 2.0 speeds, disable this bit and enable it after the command completes. Without disabling this bit, if a command is issued when the device is in L1 state and if mac2_clk (utmi_clk/ulpi_clk) is gated off, the command will not get completed.
PHYSEL 7woWrite-only0USB 2.0 High-Speed PHY or USB 1.1 Full-Speed Serial Transceiver Select
The application uses this bit to select a high-speed PHY or a full-speed transceiver.
- 1b0: USB 2.0 high-speed UTMI+ or ULPI PHY. This bit is always 0, with Write Only access.
- 1b1: USB 1.1 full-speed serial transceiver. This bit is always 1, with Write Only access.
Note: USB 1.1 full-serial transceiver is not supported. This bit always reads as 1b0.
SUSPENDUSB20 6rwNormal read/write0Suspend USB2.0 HS/FS/LS PHY (SusPHY)
When set, USB2.0 PHY enters Suspend mode if Suspend conditions are valid.
Note:
- In host mode, on reset, this bit is set to 1. Software can override this bit after reset.
- In device mode, before issuing any device endpoint command when operating in 2.0 speeds, disable this bit and enable it after the command completes. If you issue a command without disabling this bit when the device is in L2 state and if mac2_clk (utmi_clk/ulpi_clk) is gated off, the command will not get completed.
FSINTF 5roRead-only0Full-Speed Serial Interface Select (FSIntf)
The application uses this bit to select a unidirectional or bidirectional USB 1.1 full-speed serial transceiver interface.
- 1b0: 6-pin unidirectional full-speed serial interface. This bit is set to 0 with Read Only access.
- 1b1: 3-pin bidirectional full-speed serial interface. This bit is set to 0 with Read Only access.
Note: USB 1.1 full-speed serial interface is not supported. This bit always reads as 1b0.
ULPI_UTMI_Sel 4roRead-only0ULPI or UTMI+ Select (ULPI_UTMI_Sel)
The application uses this bit to select a UTMI+ or ULPI Interface.
- 1b0: UTMI+ Interface
- 1b1: ULPI Interface
PHYIF 3rwNormal read/write0PHY Interface (PHYIf)
If UTMI+ is selected, the application uses this bit to configure the core to support a UTMI+ PHY with an 8- or 16-bit interface.
- 1b0: 8 bits
- 1b1: 16 bits
ULPI Mode: 1b0
Note:
- All the enabled 2.0 ports must have the same clock frequency as Port0 clock frequency (utmi_clk[0]).
- The UTMI 8-bit and 16-bit modes cannot be used together for different ports at the same time (that is, all the ports must be in 8-bit mode, or all of them must be in 16-bit mode, at a time).
- If any of the USB 2.0 ports is selected as ULPI port for operation, then all the USB 2.0 ports must be operating at 60 MHz.
TOutCal 2:0rwNormal read/write0HS/FS Timeout Calibration (TOutCal)
The number of PHY clocks, as indicated by the application in this field, is multiplied by a bit-time factor; this factor is added to the high-speed/full-speed interpacket timeout duration in the core to account for additional delays introduced by the PHY. This may be required, since the delay introduced by the PHY in generating the linestate condition may vary among PHYs.
The USB standard timeout value for high-speed operation is 736 to 816 (inclusive) bit times. The USB standard timeout value for full-speed operation is 16 to 18 (inclusive) bit times. The application must program this field based on the speed of connection. The number of bit times added per PHY clock are:
High-speed operation:
- One 30-MHz PHY clock = 16 bit times
- One 60-MHz PHY clock = 8 bit times
Full-speed operation:
- One 30-MHz PHY clock = 0.4 bit times
- One 60-MHz PHY clock = 0.2 bit times
- One 48-MHz PHY clock = 0.25 bit times