Hello,
I am trying to use USB lane mapping config#1 on TX2 Dev Kit board. I am using L4T-28.2.1. Below are the changes I made. After below changes in L4T, I am not able to see my PCIe device on M.2 interface but am able to see PCIe device on x4 edge connector. USB device on USB1(J19) type A connector changed from 3.0 to 2.0 after the change though.
Is there any change I need to make besides the changes I made below to make config#1 work?
// Change p2771-0000.conf.common
process_board_version()
{
local board_id=“${1}”;
local board_version=“${2}”;
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
ODMDATA=0x90000; # config 1
// Recompile kernel dtb
make ARCH=arm64 O=$TEGRA_KERNEL_OUT dtbs
cp …/kernel-out/kernel/arch/arm64/boot/dts/tegra* kernel/dtb/
// Flash and reboot
./flash.sh jetson-tx2 mmcblk0p1
// plugin-manager reads odmdata correctly
nvidia@tegra-ubuntu:~$
ls /sys/firmware/devicetree/base/chosen/plugin-manager/odm-data | grep uphy
enable-pcie-on-uphy-lane0
enable-pcie-on-uphy-lane1
enable-pcie-on-uphy-lane2
enable-pcie-on-uphy-lane4
enable-sata-on-uphy-lane5
nvidia@tegra-ubuntu:~$
// Ethernet dongle changed from 3.0 to 2.0 after changing from config 2 to config 1
Bus 001 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 255 Vendor Specific Subclass
bDeviceProtocol 0
bMaxPacketSize0 64
bEndpointAddress 0x81 EP 1 IN
//pcie0_lane2_mux is enabled
nvidia@tegra-ubuntu:/proc/device-tree/gpio@2200000/pcie0_lane2_mux$ ls
gpio-hog gpios label name output-low status
nvidia@tegra-ubuntu:/proc/device-tree/gpio@2200000/pcie0_lane2_mux$ xxd status
00000000: 6f6b 6179 00 okay.
// Dmesg shows it does not link up (x4 is up but not x1)
nvidia@tegra-ubuntu:~$ dmesg | grep pci
[ 0.142270] node /plugin-manager/fragment-500-pcie-config match with board >=3310-1000-500
[ 0.142983] node /plugin-manager/fragment-500-e3325-pcie match with board >=3310-1000-500
[ 0.142999] node /plugin-manager/fragment-500-e3325-pcie match with odm-data enable-pcie-on-uphy-lane0
[ 0.263643] GPIO line 459 (pcie-lane2-mux) hogged as output/low
[ 0.267305] iommu: Adding device 10003000.pcie-controller to group 50
[ 6.465214] tegra-pcie 10003000.pcie-controller: 4x1, 1x1 configuration
[ 6.475028] tegra-pcie 10003000.pcie-controller: PCIE: Enable power rails
[ 6.484054] tegra-pcie 10003000.pcie-controller: probing port 0, using 4 lanes
[ 6.495016] tegra-pcie 10003000.pcie-controller: probing port 2, using 1 lanes
[ 6.954786] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 7.356801] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 7.770789] tegra-pcie 10003000.pcie-controller: link 2 down, retrying
[ 7.772802] tegra-pcie 10003000.pcie-controller: link 2 down, ignoring