why i can't start my pcie network card rtl8169

The m.2 slot on devkit is not enabled by default. You have to enable it by updating ODMDATA.

So firstly I need to know if you are using TX2 devkit.

If you are using devkit, please go to your BSP folder Linux_for_Tegra,

JetPack_4.3_Linux_P3310/Linux_for_Tegra
modify p2771-0000.conf.common
process_board_version()
{
local board_id=“${1}”;
local board_version=“${2}”;
local board_sku=“${3}”;
local board_revision=“${4}”;
local bdv=${board_version^^};
local bid=${board_id^^};
local uboot_build=500;
local fromfab=“-a00”;
local tofab=“-c03”; # default = C03
local pmicfab=“-c00”; # default = C00
local bpfdtbfab=“-c00”; # default = C00
local tbcdtbfab=“-c03”; # default = C03
local kerndtbfab=“-c03”; # default = C03
ODMDATA=0x1090000; # default = C0X

and change it to 0x90000 then reflash your board.

thank you
I designed it according to devkit.usd PCI #0 Lane0~3,and pcie0_refclk. But there is no SMCLK/SMDAT on the acquisition card I used. I don’t know if that’s necessary

Hi,

SMCLK/SMDAT is not necessary. Only data lane, refclk and control signals are must.

Does other pcie device work on your board?

I can USB,but I do not have any other pcie drive on my board。
In my design,I used PCIe#0(lane0~4)and pex0_refclk,Pex0_clkreq,pex0_rst,pex0_wake.But when I
nvidia@nvidia-desktop:~$ dmesg | grep pci
[ 0.457844] iommu: Adding device 10003000.pcie-controller to group 50
[ 0.457859] arm-smmu: forcing sodev map for 10003000.pcie-controller
[ 1.049998] tegra-pcie 10003000.pcie-controller: 4x1, 1x1 configuration
[ 1.051164] tegra-pcie 10003000.pcie-controller: PCIE: Enable power rails
[ 1.051623] tegra-pcie 10003000.pcie-controller: probing port 0, using 4 lanes
[ 1.054976] tegra-pcie 10003000.pcie-controller: probing port 2, using 1 lanes
[ 1.174044] ehci-pci: EHCI PCI platform driver
[ 1.174139] ohci-pci: OHCI PCI platform driver
[ 1.488394] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 1.894981] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 2.302168] tegra-pcie 10003000.pcie-controller: link 0 down, retrying
[ 2.304211] tegra-pcie 10003000.pcie-controller: link 0 down, ignoring
[ 2.708043] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 3.113934] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 3.526336] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 3.528364] tegra-pcie 10003000.pcie-controller: link 2 down, ignoring
[ 3.732944] tegra-pcie 10003000.pcie-controller: PCIE: no end points detected
[ 3.733260] tegra-pcie 10003000.pcie-controller: PCIE: Disable power rails

Please try some other pcie device and see if it can work…

Or maybe you could put rtl8169 to devkit first and see if it can work first. Better finding one fine case to figure out what is wrong.