Hi Sir,
I have connected Orin NX module with PCIe Switch (ASM1812) then connected to 4 PCI to USB devices (uPD720202) and 1 WIFI device on customer board. All devices are detected but almost system reboot following message :
ASSERT [XhciDxe] /home/nwj99/build/nvidia-uefi/edk2/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c(2104): !((((BOOLEAN)(((XhcReadOpReg ((Xhc), (0x0004))) & ((0x00000800))) == ((0x00000800))))))
Sometimes board is booted normally, but 2 uPD720202 devices dosen’t work following message :
u@u-desktop:~$ [ 205.749815] xhci_hcd 0004:81:00.0: can’t setup: -110
[ 205.749888] xhci_hcd 0004:81:00.0: init 0004:81:00.0 fail, -110
[ 205.749895] xhci_hcd: probe of 0004:81:00.0 failed with error -110
[ 205.789201] xhci_hcd 0004:ab:00.0: request interrupt 193 failed
[ 205.789203] xhci_hcd 0004:ab:00.0: startup error -4
[ 205.789235] xhci_hcd 0004:ab:00.0: init 0004:ab:00.0 fail, -4
[ 205.789239] xhci_hcd: probe of 0004:ab:00.0 failed with error -4
others works properly.
below is lsusb result that usb storage is connected to usb port. Bus 3,4,5,6 are uPD720202’s.
u@u-desktop:~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0781:5591 SanDisk Corp. Ultra Flair
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
And PCI bus number is strange.
Below is PCI C4’s kernel log. Device’s bus numbers are 0004:03:00.0, 0004:2d:00.0, 0004:57:00.0, 0004:81:00.0, 0004:ab:00.0. When performing a PCI scan, it is recognized as a hotplug bridge and the bus number appears like this, but this also seems to be wrong.
[ 8.368135] tegra194-pcie 14160000.pcie: Adding to iommu group 5
[ 8.370080] tegra194-pcie 14160000.pcie: host bridge /bus@0/pcie@14160000 ranges:
[ 8.370094] tegra194-pcie 14160000.pcie: MEM 0x2140000000…0x2427ffffff → 0x2140000000
[ 8.370101] tegra194-pcie 14160000.pcie: MEM 0x2428000000…0x242fffffff → 0x0040000000
[ 8.370105] tegra194-pcie 14160000.pcie: IO 0x0036100000…0x00361fffff → 0x0036100000
[ 8.370403] tegra194-pcie 14160000.pcie: iATU unroll: enabled
[ 8.370405] tegra194-pcie 14160000.pcie: Detected iATU regions: 8 outbound, 2 inbound
[ 8.475532] tegra194-pcie 14160000.pcie: Link up
[ 8.478307] tegra194-pcie 14160000.pcie: Link up
[ 8.478358] tegra194-pcie 14160000.pcie: PCI host bridge to bus 0004:00
[ 8.478361] pci_bus 0004:00: root bus resource [io 0x100000-0x1fffff] (bus address [0x36100000-0x361fffff])
[ 8.478364] pci_bus 0004:00: root bus resource [mem 0x2428000000-0x242fffffff] (bus address [0x40000000-0x47ffffff])
[ 8.478366] pci_bus 0004:00: root bus resource [bus 00-ff]
[ 8.478367] pci_bus 0004:00: root bus resource [mem 0x2140000000-0x2427ffffff pref]
[ 8.478411] pci 0004:00:00.0: [10de:229c] type 01 class 0x060400
[ 8.478564] pci 0004:00:00.0: PME# supported from D0 D3hot
[ 8.481609] pci 0004:01:00.0: [1b21:1812] type 01 class 0x060400
[ 8.482107] pci 0004:01:00.0: enabling Extended Tags
[ 8.482988] pci 0004:01:00.0: PME# supported from D0 D3hot D3cold
[ 8.483612] pci 0004:01:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 5.0 GT/s PCIe x2 link at 0004:00:00.0 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
[ 8.486166] pci 0004:01:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.486900] pci 0004:02:00.0: [1b21:1812] type 01 class 0x060400
[ 8.487424] pci 0004:02:00.0: enabling Extended Tags
[ 8.488312] pci 0004:02:00.0: PME# supported from D0 D3hot D3cold
[ 8.489495] pci 0004:02:02.0: [1b21:1812] type 01 class 0x060400
[ 8.490016] pci 0004:02:02.0: enabling Extended Tags
[ 8.490903] pci 0004:02:02.0: PME# supported from D0 D3hot D3cold
[ 8.491886] pci 0004:02:03.0: [1b21:1812] type 01 class 0x060400
[ 8.492406] pci 0004:02:03.0: enabling Extended Tags
[ 8.493293] pci 0004:02:03.0: PME# supported from D0 D3hot D3cold
[ 8.494623] pci 0004:02:08.0: [1b21:1812] type 01 class 0x060400
[ 8.495147] pci 0004:02:08.0: enabling Extended Tags
[ 8.496034] pci 0004:02:08.0: PME# supported from D0 D3hot D3cold
[ 8.497096] pci 0004:02:0a.0: [1b21:1812] type 01 class 0x060400
[ 8.497616] pci 0004:02:0a.0: enabling Extended Tags
[ 8.498502] pci 0004:02:0a.0: PME# supported from D0 D3hot D3cold
[ 8.499483] pci 0004:02:0b.0: [1b21:1812] type 01 class 0x060400
[ 8.500003] pci 0004:02:0b.0: enabling Extended Tags
[ 8.500891] pci 0004:02:0b.0: PME# supported from D0 D3hot D3cold
[ 8.503358] pci 0004:02:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.503423] pci 0004:02:02.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.503489] pci 0004:02:03.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.503554] pci 0004:02:08.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.503619] pci 0004:02:0a.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.503684] pci 0004:02:0b.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 8.504368] pci 0004:03:00.0: [1912:0015] type 00 class 0x0c0330
[ 8.504590] pci 0004:03:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[ 8.505707] pci 0004:03:00.0: PME# supported from D0 D3hot D3cold
[ 8.508718] pci_bus 0004:03: busn_res: [bus 03-ff] end is updated to 2c
[ 8.509379] pci 0004:2d:00.0: [1912:0015] type 00 class 0x0c0330
[ 8.509601] pci 0004:2d:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[ 8.510717] pci 0004:2d:00.0: PME# supported from D0 D3hot D3cold
[ 8.513722] pci_bus 0004:2d: busn_res: [bus 2d-ff] end is updated to 56
[ 8.514397] pci 0004:57:00.0: [10ec:b852] type 00 class 0x028000
[ 8.514563] pci 0004:57:00.0: reg 0x10: [io 0x0000-0x00ff]
[ 8.514758] pci 0004:57:00.0: reg 0x18: [mem 0x00000000-0x000fffff 64bit]
[ 8.515805] pci 0004:57:00.0: PME# supported from D0 D3hot D3cold
[ 8.518870] pci_bus 0004:57: busn_res: [bus 57-ff] end is updated to 80
[ 8.519526] pci 0004:81:00.0: [1912:0015] type 00 class 0x0c0330
[ 8.519739] pci 0004:81:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[ 8.520803] pci 0004:81:00.0: PME# supported from D0 D3hot D3cold
[ 8.523759] pci_bus 0004:81: busn_res: [bus 81-ff] end is updated to aa
[ 8.524430] pci 0004:ab:00.0: [1912:0015] type 00 class 0x0c0330
[ 8.524652] pci 0004:ab:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[ 8.525768] pci 0004:ab:00.0: PME# supported from D0 D3hot D3cold
[ 8.528734] pci_bus 0004:ab: busn_res: [bus ab-ff] end is updated to d4
[ 8.531525] pci_bus 0004:d5: busn_res: [bus d5-ff] end is updated to fe
[ 8.531553] pci_bus 0004:02: busn_res: [bus 02-ff] end is updated to fe
[ 8.531602] pci 0004:00:00.0: BAR 14: assigned [mem 0x2428000000-0x2428bfffff]
[ 8.531606] pci 0004:00:00.0: BAR 15: assigned [mem 0x2140000000-0x2140bfffff 64bit pref]
[ 8.531608] pci 0004:00:00.0: BAR 13: assigned [io 0x100000-0x105fff]
[ 8.531611] pci 0004:01:00.0: BAR 14: assigned [mem 0x2428000000-0x2428bfffff]
[ 8.531613] pci 0004:01:00.0: BAR 15: assigned [mem 0x2140000000-0x2140bfffff 64bit pref]
[ 8.531615] pci 0004:01:00.0: BAR 13: assigned [io 0x100000-0x105fff]
[ 8.531622] pci 0004:02:00.0: BAR 14: assigned [mem 0x2428000000-0x24281fffff]
[ 8.531624] pci 0004:02:00.0: BAR 15: assigned [mem 0x2140000000-0x21401fffff 64bit pref]
[ 8.531626] pci 0004:02:02.0: BAR 14: assigned [mem 0x2428200000-0x24283fffff]
[ 8.531628] pci 0004:02:02.0: BAR 15: assigned [mem 0x2140200000-0x21403fffff 64bit pref]
[ 8.531629] pci 0004:02:03.0: BAR 14: assigned [mem 0x2428400000-0x24285fffff]
[ 8.531631] pci 0004:02:03.0: BAR 15: assigned [mem 0x2140400000-0x21405fffff 64bit pref]
[ 8.531632] pci 0004:02:08.0: BAR 14: assigned [mem 0x2428600000-0x24287fffff]
[ 8.531633] pci 0004:02:08.0: BAR 15: assigned [mem 0x2140600000-0x21407fffff 64bit pref]
[ 8.531635] pci 0004:02:0a.0: BAR 14: assigned [mem 0x2428800000-0x24289fffff]
[ 8.531636] pci 0004:02:0a.0: BAR 15: assigned [mem 0x2140800000-0x21409fffff 64bit pref]
[ 8.531637] pci 0004:02:0b.0: BAR 14: assigned [mem 0x2428a00000-0x2428bfffff]
[ 8.531638] pci 0004:02:0b.0: BAR 15: assigned [mem 0x2140a00000-0x2140bfffff 64bit pref]
[ 8.531640] pci 0004:02:00.0: BAR 13: assigned [io 0x100000-0x100fff]
[ 8.531641] pci 0004:02:02.0: BAR 13: assigned [io 0x101000-0x101fff]
[ 8.531643] pci 0004:02:03.0: BAR 13: assigned [io 0x102000-0x102fff]
[ 8.531644] pci 0004:02:08.0: BAR 13: assigned [io 0x103000-0x103fff]
[ 8.531645] pci 0004:02:0a.0: BAR 13: assigned [io 0x104000-0x104fff]
[ 8.531646] pci 0004:02:0b.0: BAR 13: assigned [io 0x105000-0x105fff]
[ 8.531651] pci 0004:03:00.0: BAR 0: assigned [mem 0x2428000000-0x2428001fff 64bit]
[ 8.531751] pci 0004:02:00.0: PCI bridge to [bus 03-2c]
[ 8.531766] pci 0004:02:00.0: bridge window [io 0x100000-0x100fff]
[ 8.531804] pci 0004:02:00.0: bridge window [mem 0x2428000000-0x24281fffff]
[ 8.531829] pci 0004:02:00.0: bridge window [mem 0x2140000000-0x21401fffff 64bit pref]
[ 8.531883] pci 0004:2d:00.0: BAR 0: assigned [mem 0x2428200000-0x2428201fff 64bit]
[ 8.531982] pci 0004:02:02.0: PCI bridge to [bus 2d-56]
[ 8.531996] pci 0004:02:02.0: bridge window [io 0x101000-0x101fff]
[ 8.532033] pci 0004:02:02.0: bridge window [mem 0x2428200000-0x24283fffff]
[ 8.532059] pci 0004:02:02.0: bridge window [mem 0x2140200000-0x21403fffff 64bit pref]
[ 8.532113] pci 0004:57:00.0: BAR 2: assigned [mem 0x2428400000-0x24284fffff 64bit]
[ 8.532212] pci 0004:57:00.0: BAR 0: assigned [io 0x102000-0x1020ff]
[ 8.532241] pci 0004:02:03.0: PCI bridge to [bus 57-80]
[ 8.532256] pci 0004:02:03.0: bridge window [io 0x102000-0x102fff]
[ 8.532293] pci 0004:02:03.0: bridge window [mem 0x2428400000-0x24285fffff]
[ 8.532319] pci 0004:02:03.0: bridge window [mem 0x2140400000-0x21405fffff 64bit pref]
[ 8.532372] pci 0004:81:00.0: BAR 0: assigned [mem 0x2428600000-0x2428601fff 64bit]
[ 8.532467] pci 0004:02:08.0: PCI bridge to [bus 81-aa]
[ 8.532480] pci 0004:02:08.0: bridge window [io 0x103000-0x103fff]
[ 8.532518] pci 0004:02:08.0: bridge window [mem 0x2428600000-0x24287fffff]
[ 8.532544] pci 0004:02:08.0: bridge window [mem 0x2140600000-0x21407fffff 64bit pref]
[ 8.532598] pci 0004:ab:00.0: BAR 0: assigned [mem 0x2428800000-0x2428801fff 64bit]
[ 8.532696] pci 0004:02:0a.0: PCI bridge to [bus ab-d4]
[ 8.532710] pci 0004:02:0a.0: bridge window [io 0x104000-0x104fff]
[ 8.532748] pci 0004:02:0a.0: bridge window [mem 0x2428800000-0x24289fffff]
[ 8.532774] pci 0004:02:0a.0: bridge window [mem 0x2140800000-0x21409fffff 64bit pref]
[ 8.532826] pci 0004:02:0b.0: PCI bridge to [bus d5-fe]
[ 8.532841] pci 0004:02:0b.0: bridge window [io 0x105000-0x105fff]
[ 8.532878] pci 0004:02:0b.0: bridge window [mem 0x2428a00000-0x2428bfffff]
[ 8.532904] pci 0004:02:0b.0: bridge window [mem 0x2140a00000-0x2140bfffff 64bit pref]
[ 8.532955] pci 0004:01:00.0: PCI bridge to [bus 02-fe]
[ 8.532970] pci 0004:01:00.0: bridge window [io 0x100000-0x105fff]
[ 8.533007] pci 0004:01:00.0: bridge window [mem 0x2428000000-0x2428bfffff]
[ 8.533033] pci 0004:01:00.0: bridge window [mem 0x2140000000-0x2140bfffff 64bit pref]
[ 8.533084] pci 0004:00:00.0: PCI bridge to [bus 01-ff]
[ 8.533088] pci 0004:00:00.0: bridge window [io 0x100000-0x105fff]
[ 8.533091] pci 0004:00:00.0: bridge window [mem 0x2428000000-0x2428bfffff]
[ 8.533093] pci 0004:00:00.0: bridge window [mem 0x2140000000-0x2140bfffff 64bit pref]
[ 8.533189] pcieport 0004:00:00.0: Adding to iommu group 5
[ 8.533513] pcieport 0004:00:00.0: PME: Signaling with IRQ 193
[ 8.535167] pcieport 0004:00:00.0: AER: enabled with IRQ 193
[ 8.535424] pcieport 0004:01:00.0: Adding to iommu group 5
[ 8.535526] pcieport 0004:01:00.0: enabling device (0000 → 0003)
[ 8.536660] pcieport 0004:02:00.0: Adding to iommu group 5
[ 8.536751] pcieport 0004:02:00.0: enabling device (0000 → 0003)
[ 8.537951] pcieport 0004:02:02.0: Adding to iommu group 5
[ 8.538041] pcieport 0004:02:02.0: enabling device (0000 → 0003)
[ 8.539252] pcieport 0004:02:03.0: Adding to iommu group 5
[ 8.539343] pcieport 0004:02:03.0: enabling device (0000 → 0003)
[ 8.540538] pcieport 0004:02:08.0: Adding to iommu group 5
[ 8.540626] pcieport 0004:02:08.0: enabling device (0000 → 0003)
[ 8.541821] pcieport 0004:02:0a.0: Adding to iommu group 5
[ 8.541909] pcieport 0004:02:0a.0: enabling device (0000 → 0003)
[ 8.543098] pcieport 0004:02:0b.0: Adding to iommu group 5
[ 8.543197] pcieport 0004:02:0b.0: enabling device (0000 → 0003)
[ 8.544406] pci 0004:03:00.0: enabling device (0000 → 0002)
[ 8.544606] pci 0004:2d:00.0: enabling device (0000 → 0002)
[ 8.544785] pci 0004:81:00.0: enabling device (0000 → 0002)
[ 13.544874] pci 0004:81:00.0: xHCI HW not ready after 5 sec (HC bug?) status = 0x1801
[ 13.544936] pci 0004:81:00.0: quirk_usb_early_handoff+0x0/0x960 took 4882998 usecs
[ 13.545088] pci 0004:ab:00.0: enabling device (0000 → 0002)
The modification was to add “pcie_aspm=off” to the cmdline and the two lines below to the device tree.
nvidia,max-speed = <2>;
num-lanes = <2>;
Please let me know if anything else needs to be changed.
Thanks.
Best regards.