PCIe issues on Jetson AGX Xavier

Hi,
I’m working on a custom Jetson AGX Xavier HW.
My SW is based on Jetpack 4.5.1 and Kernel 4.9.
I have enabled four PCIe ports (pcie@14100000, pcie@14140000, pcie@14160000 and pcie@141a0000).
On each PCIe bus there’s a LAN7430 IC. When the device has booted up, lspci command only finds two of the four LAN7430 ICs.

On trace data I see this error message;
[ 2.751981] tegra-pcie-dw 14160000.pcie: fail to get regulator: -19

I have made no modifications in Device Tree (except enabling of the four PCIe ports).
On trace terminal I can see pcie-1, pcie-3 and pcie-5 under /sys/kernel/debug/.
Command lspci shows;
0001:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad2 (rev a1)
0001:01:00.0 Ethernet controller: Microchip Technology / SMSC Device 7430 (rev 11)
0003:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad2 (rev a1)
0003:01:00.0 Ethernet controller: Microchip Technology / SMSC Device 7430 (rev 11)
0005:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad0 (rev a1)

From SW perspective (i.e. assuming that the HW is ok), what might be the reason for the error concerning the regulator?
Any idea on why only those two PCIe devices are detected?

Thanks,
Jari

Hi,

I’m answering myself the question as I got the regulator issue resolved.
The fix is to use following kind of configuration in the device tree;
pcie@14160000 {
status = “okay”;
vddio-pex-ctl-supply = <&p2888_spmic_sd3>;
nvidia,enable-power-down;
nvidia,disable-clock-request;
phys = <&p2u_8>,
<&p2u_9>;
phy-names = “pcie-p2u-0”, “pcie-p2u-1”;
};
Regards,
Jari

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