Hi Experts,
I'm developing a usb vbus on/off checking test.
Is there more details description or flow chart about how to use VBUS detection ( chapter 12.3.2.3.3).
Technical Reference Version that I'm reading is spruiv7 - MAY 2022.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello CWL,
Please refer to the latest TRM.
https://www.ti.com/lit/pdf/spruiv7
Please explain the USB configuration and if you have followed the VBUS design guidelines in the data sheet.
Regards,
Sreenivasa
The purpose of test is to verify is the voltage of VBUS are able to control by USB_DRVVBUS pin from USB IP. The control of USB_DRVVBUS via GPIO and USB IP is included. For now, I'm working in how to control the USB_DRVVBUS by USB IP and verify the VBUS by VBUS detection.
Hi,
The USB_DRVVBUS pin shouldn't be in GPIO mode to control the VBUS power supply.
The xHCI controller register has a bit which can be used to control USB_DRVVBUS pin, but I haven't used it for years. I will look it up and provide the details.
Hi, Bin Liu. Yes, you are right. For GPIO control, it is just take in consideration that other GPIO(s) used to control the VBUS which is not controllable by the USB IP. You can forget about GPIO part. I'm working in USB IP part, control USB_DRVVBUS and detect VBUS by USB IP.
I can't find a clearly instructions for these parts.
Hi,
The xHCI register PORTSC bit9 controls the USB_DRVVBUS pin. Setting bit9 to 1 drives USB_DRVVBUS high; setting it to 0 drives USB_DRVVBUS low.
The PORTSC register address for USB0 is 0x31000420, for USB1 is 0x31100420.
Hi,
Thanks for the quick reply. Yes, I think these are the information I wanted. I will test it out later in EVK module.
Can guide/share me where to find this eXtensible Host Controller Interface for Universal Serial Bus [USB] Specification 3.0?
I also would like to find out how to use the VBUS detection part too.
Hi,
Before use xHCI to control the USB_DRVVBUS, other than initialise the LPSC_USB_0/LPSC_USB_1 module domain. Anything is required to be done? Is xHCI required to be initialise too? At this moment, I able to toggle PORTSC register address for USB0 and USB1. But the USB_DRVVBUS is not toggle as expected.