NUCLEO-H7S3L8 USB_OTG_HS Host Issue: TXERR during EP0 SETUP
I am currently using the NUCLEO-H7S3L8 CN2 Type-C port as a USB_OTG_HS embedded PHY host/source.
The TCPP03 source path opens successfully, and both the USB stick attachment and port reset are working. After the reset, HPRT reads 0x00001005, which seems to indicate speed=HS and that the port is enabled.
However, during the first EP0 SETUP GET_DESCRIPTOR request:
-
HAL_HCD_HC_SubmitRequest()=HAL_OK -
HAINT=0x00000001 -
HCINT=0x00000080 -
TXERR=1 -
xfer_count=0
The exact same issue occurs even during a raw HAL EP0 smoke test, prior to involving USBX/FileX.
I would like to verify the following points:
-
What is the mandatory clock/power initialization sequence when using the USB_OTG_HS embedded PHY host on the H7S3L8?
-
Is it acceptable to use HSI → PLL3Q for the USBPHYC clock, or is an HSE strictly required?
-
What are the necessary settle/wait conditions after enabling
USBHSREG? -
Are there any required CC/UCPD configurations for the CN2 Type-C/TCPP03 source setup, apart from the PM9 PWR_EN + TCPP03 provider gate?
-
Is the state where
HPRT=0x00001005andHCFG=0x00000201considered normal under these conditions?
