So here the two changes I done on my side under the dtb pcie node:
1. rename compatible string from
After these two changes the PCI controller seems (at least) correclty enumerated at boot:
[ 3.008564] pci_bus 0000:00: root bus resource [bus 00-01]
[ 3.008573] pci_bus 0000:00: root bus resource [mem 0xf6000000-0xf7ffffff] (bus address [0x00000000-0x01ffffff])
[ 3.009785] pcie_pme 0000:00:00.0:pcie001: service driver pcie_pme loaded
You can give it a try and let me know, your building steps look good.
I mean having an unaligned DTB (too old or too new comparing to the kernel version) can break the driver expectation in term of pcie node structure, resources.... And this is what we have to fix.