Forums › Reference, Evaluation, and Development Boards › (OSD3358) USB1_OCN
Hi,
https://octavosystems.com/docs/osd3358-bas-sbc-reference-design-schematic/
https://octavosystems.com/files/lesson-2-device-tree-files/
https://www.ti.com/lit/ds/symlink/am3358.pdf
osd3358…schematic, Sheet 6/9. USB Host section. TPS2051 U8 pin-5 (USB1_OCN) is connected to SIP-C pin-T16 (GPMC_A10). Referring to page 24 of the am3358.pdf, I am guessing that GPMC_A10 pin attribute is being set as GPIO1_26 to detect TPS2051 over current condition. If my guess is wrong, please describe the purpose of the USB1_OCN signal.
If my guess is correct, I can find nowhere in the device tree where the GPMC_A10 pinmux is being set or where USB1 node is set to use GPIO1_26.
Please provide an example device tree where GPMC_A10 pinmux is set to GPIO1_26 and USB1 is set to use GPIO1_26.
Also, what does the USB port do when it detects an over-current condition?
How does the end user know there is an over-current condition?
Does the kernel (what versions) display a message?
How is the over-current condition recovered?
Thank you,
You are correct. USB1_OCN output of TPS2051 is used to indicate an over current on USB1 Host interface of the board With GPMC_A10 configured as GPIO input.
While this is implemented in hardware, by connecting the OC output of TPS2051 to GPMC_A10, this also needs software configuration to work. This is not currently implemented in dev board images, which is why you did not see pinmux setup for GPMC_A10.
In order to implement the feature, an interrupt must be captured on GPMC_A10 and handles by the USB host driver to turn of USB_DRVVBUS. It should be implemented in TI’s USB stack outlined here: https://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components/Kernel/Kernel_Drivers/USB/MUSB.html. It does not look like this is implemented: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/usb/musb/musb_am335x.c.
However, there the USB PHY controller in AM335x has undervoltage protection that monitors VBUS voltage and turns it OFF when VBUS goes below 4.4V. Please see https://e2e.ti.com/support/processors-group/processors/f/processors-forum/533061/am335x-usb-overcurrent-input for a discussion on TI forums.
Best,
Neeraj
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields