Jetson AGX Xavier PCIe power supply

I am using Jetson AGX Xavier and trying to connect another board to it’s PCIe slot (C5). Initially lspci was not showing this slot at all, in “dmesg | grep pci” there was
“”"
[ 6.296298] tegra194-pcie 141a0000.pcie: Failed to get slot regulators: -517
[ 6.953919] tegra194-pcie 141a0000.pcie: Failed to get slot regulators: -517

[ 8.518227] pci_bus 0005:01: busn_res: [bus 01-ff] is released
[ 8.518532] pci 0005:00:00.0: Removing from iommu group 11
[ 8.518695] pci_bus 0005:00: busn_res: [bus 00-ff] is released
“”"

Then I have done following changes in Linux_for_Tegra/source/public/hardware/nvidia/platform/t19x/galen/kernel-dts/common:

  1. in file tegra194-p2888-0000-a00.dtsi, section pcie@141a0000, changed “nvidia,enable-power-down” to “nvidia,disable-power-down”
  2. in file tegra194-fixed-regulator-p2822-1000.dtsi, sections p2822_vdd_3v3_pcie and p2822_vdd_12v_pcie commented lines “regulator-boot-on;”
  3. in file tegra194-spmic-p2888-0001.dtsi, section p2888_spmic_sd3 commented line “regulator-boot-on;”

Now lspci shows 0005:00:00.0 PCI bridge but there is no 0005:01:00.0, and in in “dmesg | grep pci” there is still
“”"
tegra194-pcie 141a0000.pcie: Failed to get slot regulators: -517
tegra194-pcie 141a0000.pcie: Failed to get slot regulators: -517
“”"

I have 2 questions:

  1. in file tegra194-fixed-regulator-p2822-1000.dtsi, section p2822_vdd_12v_pcie regulator_min_microvolt and regulator_max_microvolt are set to 1200000 (like 1.2V) instead of 12000000 (12V), is it a typo? Should I append zero?
  2. why does it fail to get slot regulators?

Does this affect anything to the PCIe functionality here or you just want to know where there is an error print?

Hi,
I’m not sure does this affect or not, I just assume it could be the reason why Xavier doesn’t recognize the device.

Also I have an update: I have connected COM port with PCIe x1 to C5 slot and it has been recognized. The device I am troubling with is x8.

Which Jetpack release are you using?

I don’t think what you are doing there is necessary.

I use jetpack 5.1.5.
If these actions are not necessary, does it mean the problem is on the side of another device?

I forgot to say, my device works fine on PC (x86 with windows) so I guess there should be no problem on the side of that device

Is this test on NV devkit or your custom board? What PCIe device are you using?

It is NV devkit. Device is analog to digital converter.

Have you tried other x8 device there?

No, currently I don’t have another x8 device

Try to bind and unbind the controller when you add “nvidia,disable-power-down” and see if you could see the device comes up.

Already tried, no difference.

I have tried PCIe x8 RAID controller, it works fine.

My device is gen2 and setting nvidia,max-speed and nvidia,init-speed to 2 solved the problem. But I don’t understand why Jetson doesn’t establish connection with gen2 automatically?

It sounds like link training has some failure there which we may not know unless using PCIE analyzer.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.