AM3358: USB0_VBUS address

Part Number: AM3358
Other Parts Discussed in Thread: TPS2051

Tool/software:

Hi,

AM3358, TPS2051BDGN and TPS2041BDGN.

Kernel 5.11.10

I have a custom board based upon the BBB. USB0 is in PERIPERAL mode and will supply +5vdc using the TPS2051BDGN power switch. During kernel boot, USB0_DRVVBUS changes from low to high and the +5 output of the TPS2051 changes from 0 to +5vdc. All has been working well in production. I have two boards from a new batch which have problems powering up USB0.

using an o-scope connected to left side of FB1, USB0_VBUS, I see four _5vdc pulses. This confirms that the USB0_DRVVBUS is enabling the TPS2051 and USB0_VBUS is being sent to the AM3358 processor.

Kernel dmesg logs these messages
musb-hdrc musb-hdrc.0: VBUS_ERROR in a_await_vrise (89, <AValid) retry #1 port1 00000104
musb-hdrc musb-hdrc.0: VBUS_ERROR in a_await_vrise (89, <AValid) retry #2 port1 00000104
musb-hdrc musb-hdrc.0: VBUS_ERROR in a_await_vrise (89, <AValid) retry #3 port1 00000104
musb-hdrc musb-hdrc.0: VBUS_ERROR in a_await_vrise (89, <AValid) retry #4 port1 00000104

I understand that the messages indicate that the processor never saw the USB0_VBUS signal.

I would like to check the real time state/value of the USB_VBUS pin from the kernel command line.

Is there a kernel command that can be used to check the real time state/value of the USB_VBUS pin?

Thank you,

  • Hi Jack,

    You are saying the port is in device/peripheral mode. Is that correct?

    Thanks,

    Stan

  • Sorry about my typo. Yes, the port is setup as peripheral. Here is snippet from a my device tree.

    &usb0 {
      status = "okay";
      dr_mode = "peripheral";
      interrupts-extended = ;
      interrupt-names = "mc", "vbus";
    };

    &usb1 {
      status = "okay";
      dr_mode = "host";
    };

    I have two boards from a batch of 50 that report the VBUS_ERROR. I know the TPS2051 is working correctly because I can use my o-scope to trace the USB0_VBUS signal up to the point where it goes under the processor.

    I am trying to determine if the processor USB0_VBUS pin is connected to the PCB.

    Is there a way, from the command line, to check the status of the USB0_VBUS pin.

    Thank you,

  • Hi Jack,

    I don't know for a command showing VBUS status, I'm sorry, however it is clear from the messages that VBUS never rises.

    I have another request. Can you please tell me the type of the USB receptacle or take a picture of it?

    Thanks,

    Stan