I am trying to get a PCIe card to be recognized by the TX2 but so far have had had no luck. I am running the latest version of Jetpack 4.2, with a modified rootfs to remove the oem configuration to allow running headless (removed the oem-* services from systemd).
The device is a PCIe x4 Gen 2 device.
Kernel: 4.9.140
L4T: 32.1
Rootfs: 18.04.2 LTS (Bionic Beaver)
I have made a couple of changes to the device tree:
tegra186-quill-p3310-1000-c03-00-base.dtb
Added in boot delay. Note I am decompiling the full dtb then making changes to this rather than the dtsi files.
pcie-controller@10003000 {
compatible = "nvidia,tegra186-pcie";
power-domains = <0x1f 0x9>;
device_type = "pci";
....
phandle = <0x110>;
nvidia,boot-detect-delay = <20000>;
pci@1,0 {
device_type = "pci";
assigned-addresses = <0x82000800 0x0 0x10000000 0x0 0x1000>;
reg = <0x800 0x0 0x0 0x0 0x0>;
status = "okay";
#address-cells = <0x3>;
#size-cells = <0x2>;
ranges;
nvidia,num-lanes = <0x4>;
nvidia,afi-ctl-offset = <0x110>;
nvidia,disable-aspm-states = <0xf>;
nvidia,disable-clock-request;
};
tegra186-a02-bpmp-quill-p3310-1000-c04-00-te770d-ucm2.dtb
Added in clock@plle to disable SSC
clock@sdmmc2 {
clk-id = <0x35>;
allow_fractional_divider = <0x1>;
};
clock@plle {
clk-id = <0x200>;
pll_freq_table = <0x249f000 0x5f5e100 0x2 0x7d 0x18 0xffffffff 0xffffffff 0xffffffff 0xffffffff>;
};
Boot log shows it trying 10 seconds after boot:
[ 21.087259] tegra-pcie 10003000.pcie-controller: PCIE: Enable power rails
[ 21.092805] tegra-pcie 10003000.pcie-controller: probing port 0, using 4 lanes
[ 21.096158] tegra-pcie 10003000.pcie-controller: probing port 2, using 1 lanes
[ 21.527196] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 21.939004] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 22.349838] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 22.351986] tegra-pcie 10003000.pcie-controller: link 0 down, ignoring
[ 22.766871] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 23.182838] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 23.598477] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 23.600636] tegra-pcie 10003000.pcie-controller: link 2 down, ignoring
[ 23.600753] tegra-pcie 10003000.pcie-controller: PCIE: no end points detected
[ 23.603858] tegra-pcie 10003000.pcie-controller: PCIE: Disable power rails
Does any one have any suggestions about where to go next? Note the HDMI is also disabled in the device tree to make sure it definitely runs as headless.
Thanks