Dear Jetson Hardware Experts,
With SDK Manager, I installed JetPack 6.2.1 and I am able to run a Jetson Orin NX 8G with a carrier board devkit.
I used the following command:
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" --showlogs --network usb0 p3509-a02-p3767-0000 external
Now I am trying to modify the device tree.
I managed to disable the fusb301, but I cannot manage to modify the USBs.
In the file p3509-a02-p3767-0000.conf, I added the line:
OVERLAY_DTB_FILE+=",mycustomdtb.dtbo";
I created mycustomdtb.dtsi in the JetPack kernel folder:
/dts-v1/;
/plugin/;
/ {
overlay-name = "mycustomdtb";
compatible = "nvidia,p3768-0000+p3767-0003";
fragment@0 {
target-path = "/";
__overlay__ {
bus@0 {
padctl@3520000 {
pads {
usb3 {
lanes {
usb3-2 {
nvidia,function = "xusb";
status = "okay";
#phy-cells = <0x0>;
};
};
};
};
ports {
usb3-0 {
status = "okay";
nvidia,usb2-companion = <0x0>;
};
usb3-1 {
status = "okay";
nvidia,usb2-companion = <0x1>;
};
usb3-2 {
status = "okay";
nvidia,usb2-companion = <0x2>;
};
};
};
usb@3610000 {
phys = <0xfb 0xfe 0xff 0x100 0xfc &{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1", "usb3-2";
};
i2c@c240000 {
fusb301@25 {
status = "disabled";
};
};
};
};
};
};
Finally, I run the command:
./dtc -I dts -O dtb -o ./dtb/mycustomdtb.dtbo -@ mycustomdtb.dtsi
After flashing the Jetson, there are no more fusb301 lines in dmesg.
With the command:
dtc -I fs -O dts /sys/firmware/devicetree/base | less
I can see that fusb301@25 is indeed disabled, but the USBs are not affected.
Could you please tell me what I missed ?
I used this method because I wasn’t able to apply these changes by modifying the source DTB files. I tried different methods, and for now, this is the only one that works.