USB cannot be used on Non-public plate

Hello,I had trouble designing the external circuitry for USB ,USB devices cannot be used on the new baseplate. searched the data and the current monitoring chip has been added(INA3211), But it still doesn’t work ,I also can’t measure the I2C signal on the official baseboard. Is there any other reason why USB cannot be used?

First you should check the power on sequence as listed in OEM DG to make sure board can power up correctly. As for the USB part, it should be following the reference design in OEM DG or ref schematic of dev kit. Not sure why you mentioned INA3211, is it related to USB? And why can’t measure I2C? There are exposed pins on module connector for I2C which you can probe if necessary.

Thank you for the answer,Now,the expansion board can work normally. I can accept HDMI video,but the USB ccannot be searched in device management ,So, I want to know what might be causing it.

Following check list in DG and ref schematic to check your USB part design to eliminate possible difference, also to confirm if the USB lane mapping is correct. Generally USB part circuit is not so complicated, if the schematic design has no problem and sw is OK, then it might be layout quality issue which need to observe the signal quality.

My design is based on your reference design, the schematic of the USB 2.0 and USB 3.0 is same with the your design. After checking the reference documents, we guess the problem may come from the power monitor circuits(INA3221s), because we changed this monitor circuit and try to make it simpler. We are wondering if the TX2 disabled the peripherals such as USB 2.0 and USB 3.0, after it read unexpected voltage value from the two INA3221 monitor chips. Is this reasonable?
Another strange issue, we probed the I2C (SCL & SDA) pins of the INA3221 and try to capture the signals but get no signal, the TX2 doesn’t read the monitor chips? Can we disable this monitor circuits, and how?
One more question, in what cases, the TX2 will disable the USB peripheral? We can’t find the USB device in the OS. Thanks a lot.

It is not easy to tell which causes USB fail. If your design is same to dev kit, you can isolate those are different, such as the power monitor as you said. Isolate the monitor totally to see if issue is still there. Also for the I2C to power monitor, you can remove monitor to probe the signals on I2C to see if it is correct.

we are experiencing the same problem. At present, HDMI is normal, indicating that the power-on sequence should be okay, and the pins are the same. We think that there is a problem with IN3221 monitoring, but there is no way to solve it at present. Are there any conditions for USB boot, such as detecting the correct 5V, etc.?

How to check the results of power monitoring (INA3221)?

You can compare the USB power rail to dev kit to confirm if it is correct. About reading INA3221, please refer to this doc : https://developer.nvidia.com/embedded/dlc/jetson-tx1-tx2-voltage-current-config

What are the exceptions? Can you analyze the cause of the following abnormality?

Starting kernel …

[ 0.000000] Booting Linux on physical CPU 0x100
[ 0.000000] Linux version 4.9.140-tegra (qy@service-host) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #3 SMP PREEMPT Tue Sep 10 15:16:09 CST 2019
[ 0.000000] Boot CPU: AArch64 Processor [411fd073]
[ 0.000000] OF: fdt:memory scan node memory@80000000, reg size 16416,
[ 0.000000] OF: fdt: - 80000000 , 70000000
[ 0.000000] OF: fdt: - f0200000 , 185600000
[ 0.000000] OF: fdt: - 275e00000 , 200000
[ 0.000000] OF: fdt: - 276600000 , 200000
[ 0.000000] OF: fdt: - 277000000 , 200000
[ 0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options ‘’)
[ 0.000000] bootconsole [uart8250] enabled

[ 0.525119] pca953x 0-0074: failed reading register
[ 0.964468] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 1.032444] tegradc 15210000.nvdisplay: dc_hdmi_hotplug_init: couldn’t get regulator vdd_hdmi_5v0, -517
[ 1.267343] FAN: coudln’t get the regulator
[ 1.552892] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 1.578362] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 1.592842] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 2.047199] cgroup: cgroup2: unknown option “nsdelegate”
[ 2.480248] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 2.563368] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 3.867862] random: crng init done
[ 3.871270] random: 7 urandom warning(s) missed due to ratelimiting
[ 3.980646] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 4.005323] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 4.248499] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 4.270804] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517
[ 5.617391] vdd-1v8: voltage operation not allowed
[ 5.622288] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.649858] vdd-1v8: voltage operation not allowed
[ 5.654740] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.683407] vdd-1v8: voltage operation not allowed
[ 5.688251] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.698118] vdd-1v8: voltage operation not allowed
[ 5.702950] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.818285] vdd-1v8: voltage operation not allowed
[ 5.823127] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.831558] vdd-1v8: voltage operation not allowed
[ 5.836441] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 5.838116] vdd-1v8: voltage operation not allowed
[ 5.838122] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)

Ubuntu 18.04.4 LTS tx2 ttyS0

tx2 login:

Hi 1316886298,

tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517

This error comes up when your device tree has something wrong. Please read the software guide → TX2 adaptation guide published on 2019/07 to review your DT.

1.JETSON TX2 PLATFORMADAPTATION AND BRING-UPGUIDE?
2.USB EN, SD EN no output .The program used is normal on the carrier board of P2597, and it is abnormal on the carrier board designed by myself. Is there no output from USB EN, SD EN because there is no “GPIO expander "?
3. “tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517” Where is the device tree in question? The USB interface is the same as the official board of P2597.
4. The designed carrier board only has a power system (with power monitoring), USB3.0, USB2.0, HDMI, and Ethernet. But there is no eprom, GPIO Expansion, DISPLAY, Camera, JTAG, etc. The pin (SW) definition is the same. Does it work without modifying the device tree?

How to design to be fully compatible with the system program of the P2597 board. What parts are necessary? For example, GPIO EXPANDERS, EPROM, “OEM PRODUCT DESIGN GUIDE NVIDIA Jetson TX2 Series” does not have corresponding instructions.

Hi,

Missing GPIO Expander would probably cause this issue. We also had other users told us their board is same as p2597 but turns out they need to modify device tree.

Please do the software change according to the adaptation guide. I guess you may miss some regulator in power tree so need to change it to battery_reg.

Such problem is very common on forum. You could also search the topics.

The SD card power enable signal is also not output. Does the device tree need to be modified?

pinctrl@3520000 {
vbus-0-supply = <&vdd_usb0_5v>;
vbus-1-supply = <&vdd_usb1_5v>;
vbus-2-supply = <&battery_reg>;
vbus-3-supply = <&battery_reg>;
vddio-hsic-supply = <&battery_reg>;
avdd_usb-supply = <&spmic_sd3>;
vclamp_usb-supply = <&spmic_sd2>;
avdd_pll_erefeut-supply = <&spmic_sd2>;
};

This topic is for usb only. If you want to dig into the sdcard, please file a new topic.

What could be the cause as shown below? And the system waits for a long time at “[3.585659] random: 7 urandom warning (s) missed due to ratelimiting”?

Starting kernel …

[ 0.000000] Booting Linux on physical CPU 0x100
[ 0.000000] Linux version 4.9.140-tegra (buildbrain@mobile-u64-1935) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #1 SMP PREEMPT Mon Dec 9 22:52:02 PST 2019
[ 0.000000] Boot CPU: AArch64 Processor [411fd073]
[ 0.000000] OF: fdt:memory scan node memory@80000000, reg size 16416,
[ 0.000000] OF: fdt: - 80000000 , 70000000
[ 0.000000] OF: fdt: - f0200000 , 185600000
[ 0.000000] OF: fdt: - 275e00000 , 200000
[ 0.000000] OF: fdt: - 276600000 , 200000
[ 0.000000] OF: fdt: - 277000000 , 200000
[ 0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options ‘’)
[ 0.000000] bootconsole [uart8250] enabled

[ 0.525170] pca953x 0-0074: failed reading register
[ 0.525778] pca953x 0-0077: failed reading register
[ 1.062619] tegradc 15210000.nvdisplay: dc_hdmi_hotplug_init: couldn’t get regulator vdd_hdmi_5v0, -517
[ 1.278195] FAN: coudln’t get the regulator
[ 1.980810] cgroup: cgroup2: unknown option “nsdelegate”
[ 3.582238] random: crng init done
[ 3.585659] random: 7 urandom warning(s) missed due to ratelimiting
[ 87.416509] /dev/ttyGS0 is invalid, change system configuration setup on /dev/ttyS0
[ 87.427367] Please complete system configuration setup on the serial port. e.g. /dev/ttyUSBx where can x 0, 1, 2 etc.
[ 88.242216] vdd-1v8: voltage operation not allowed
[ 88.247101] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.274330] vdd-1v8: voltage operation not allowed
[ 88.279230] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.307163] vdd-1v8: voltage operation not allowed
[ 88.312045] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.321147] vdd-1v8: voltage operation not allowed
[ 88.326078] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.441896] vdd-1v8: voltage operation not allowed
[ 88.446773] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.454990] vdd-1v8: voltage operation not allowed
[ 88.459809] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
[ 88.467910] vdd-1v8: voltage operation not allowed
[ 88.472715] sdhci-tegra 3440000.sdhci: could not set regulator OCR (-1)
e[1;24re[4le)0e[me(Be[1;24re[He[Je[1;1HSystem Configuratione[9;12H鈹屸攢鈹?鈹?鈹?鈹? License For Customer Use of NVIDIA Software 鈹溾攢鈹?鈹?鈹?鈹?鈹?e[10;12H鈹?e[56C鈹?e[11;12H鈹? Welcome to Jetson Initial Configuratione[16C鈹?e[12;12H鈹?e[56C鈹?e[13;12H鈹?e[25Ce[7me[27Ce[me(B鈹?e[14;12H鈹?e[56C鈹?e[15;12H鈹斺攢鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?鈹?e[13;39H

Is there any program that does not need to modify the device tree? As long as the external power supply is required, the system can work normally, and USB can output normally? (Pin definitions are consistent)

Please read below wiki page to understand what to do now.

https://elinux.org/Jetson/General_debug

The answer is in the “Boot” section

At present, the USB is abnormal, the mouse and keyboard cannot be connected, and the user account cannot be configured. Is there any other way?