JetPack 5.1.2 vbus_en0 not working on my custom board

Hi, i want to change gpio(PZ.01) but, it’s not working.
There is a pin that was used in recovery mode, and I would like to change it to USB-c type.

here is my xml.

here is my schematic.

cat /sys/kernel/debug/gpio




write a regulator that is using this gpio and gives this regulator to the vbus-supply of thie usb device tree node… this is also mentioned in document.

Please, can you tell me where is the document??

i changed fixed-regulator.dtsi

but, port PZ, 1 is not working…

Don’t know what you want to do with this screenshot.
Which GPIO pin are you using here?

Also, your screenshot is still always-on regulator, it won’t have ON/OFF change.

I am testing to make sure port Z 1 is set to high before using OTG mode.
Port Z 1 is used as USB HIgh.
Port Z 1 and Z 2 have the same settings, but Port Z 1 doesn’t change to high.

Please share the exact device tree change you have made … It does not help by just your own description… Need the code to tell…

Also, please share your exact design of type C type…

Some points to clarify from my side.

  1. Your change seems not sufficient for a type C usb port to use… Is it a host mode only or you want OTG?
  2. The regulator will be handled by the USB driver but not something controlled by you…

The above is the end of the code changes.
I changed the existing Type C USB to Type A USB. also, i want OTG mode.


We don’t support type A to have OTG mode… only micro usb or type C can have OTG mode…

Above thing is not sufficient code change either… did you really read the document?

Yes, i read the document.
But I don’t need a detect pin.
I just need to push PZ, 1 high.

You need to refer to the truth table here… The driver won’t be in fully OTG mode with just vbus detect…

sorry. I was mistaken for a moment.
I talked to the internal team and they said that the hardware has been configured so that it can operate by simply raising the USB POWER EN Pin, that is, PORT Z 1.
Is there a way to make port Z 1 pin high? Even if the value is sent as high in sys/class/gpio, it is displayed as low on the oscilloscope.


Could you check your /sys/kernel/debug/gpio and see if that value is really changed with your /sys/class/gpio toggled?

I mean, This means restoring the changed device tree and changing /sys/class/gpio.
Currently, when the device tree is modified, it cannot be confirmed due to resource busy.

Yes, what I am telling here are:

  1. It sound like your design cannot follow our official usb driver support scope.

  2. Since it cannot use our driver and you only want to control it as GPIO, then we just follow what you need and forget about usb driver thing.

Thus, please forget about the regulator thing and let GPIO Z,1 to be free one to be controlled by you directly…

Hi @WayneWWW .
I will sort it out.
I want to use Port Z 1 like a gpio. but, Even if you make the pin high using /sys/class/gpio, it outputs low when measured with an oscilloscope.
Can you provide a solution for this?

I only check for software part. Thus, I only want to know if the value in /sys/kernel/debug/gpio is correct.

Please confirm this first.