
Hi Pali,
On 04.11.21 16:49, Pali Rohár wrote:
Hello! Recently I have sent more PCIe related patches for mvebu/armada SoCs into U-Boot. Now all were merged into U-Boot git master branch. I have tested everything on Armada 38x.
I would like to ask if you have some Armada 370 board (or older, e.g. Dove, Kirwood, Discovery, Orion) and if you could test if PCIe cards are correctly detected in recent U-Boot from git master branch.
Just calling 'pci 0', 'pci 1', 'pci 2', ... commands and checking output if all connected cards are printed should be enough.
On older boards, I would be interested in what is reported in PCI config space of PCIe Root Port. U-Boot from git master branch now exports the first PCIe Root Port at BDF address 0.0.0, so config space can be dumped by U-Boot command 'pci display.b 0.0.0 0 200'.
Here my tests on the Armada XP theadorable board:
=> pci 0 Scanning PCI devices on bus 0 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 00.00.00 0x11ab 0x7826 Bridge device 0x04 => pci 1 Scanning PCI devices on bus 1 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 01.00.00 0x8086 0x0082 Network controller 0x80 => pci 2 Scanning PCI devices on bus 2 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 02.00.00 0x11ab 0x7826 Bridge device 0x04 => pci 3 Scanning PCI devices on bus 3 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 03.00.00 0x10b5 0x8619 Bridge device 0x04 03.00.01 0x10b5 0x8619 Base system peripheral 0x80 => pci 4 Scanning PCI devices on bus 4 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 04.01.00 0x10b5 0x8619 Bridge device 0x04 04.02.00 0x10b5 0x8619 Bridge device 0x04 04.03.00 0x10b5 0x8619 Bridge device 0x04 => pci 5 Scanning PCI devices on bus 5 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ => pci 6 Scanning PCI devices on bus 6 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 06.00.00 0x1b4b 0x9182 Mass storage controller 0x06 => pci 7 Scanning PCI devices on bus 7 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ => pci display.b 0.0.0 0 200 00000000: ab 11 26 78 07 00 10 00 02 00 04 06 00 00 01 00 00000010: 00 00 00 00 00 00 00 00 00 01 01 00 01 f1 00 00 00000020: 00 c0 00 c0 01 10 01 00 00 00 00 00 00 00 00 00 00000030: 10 f1 0f f1 40 00 00 00 00 00 00 00 00 01 00 00 00000040: 01 50 03 06 00 00 00 00 00 00 00 00 00 00 00 00 00000050: 05 60 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00000060: 10 00 42 00 80 80 00 00 00 20 00 00 11 ac 07 00 00000070: 40 00 11 10 00 00 00 00 00 00 40 00 00 00 00 00 00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000090: 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000100: 01 00 01 00 00 00 00 00 00 00 00 00 10 00 06 00 00000110: 00 00 00 00 00 20 00 00 00 00 00 00 01 00 00 4a 00000120: 04 00 00 01 00 01 08 01 02 80 00 34 00 00 00 00 00000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Looks much better now AFAICT upon a quick glance.
Here the output from an older U-Boot version on this board (2021.01):
=> pci 0 Scanning PCI devices on bus 0 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 00.01.00 0x8086 0x0082 Network controller 0x80 => pci 1 Scanning PCI devices on bus 1 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 01.01.00 0x10b5 0x8619 Bridge device 0x04 01.01.01 0x10b5 0x8619 Base system peripheral 0x80 => pci 2 Scanning PCI devices on bus 2 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ => pci 3 No such bus => pci 4 No such bus => pci 5 No such bus => pci 6 No such bus => pci 7 No such bus => pci 8 No such bus => pci 9 No such bus
Thanks, Stefan