Hi Daire, Thank you for working on this! [...] > +static const struct pci_ecam_ops mc_ecam_ops = { > + .bus_shift = 20, > + .init = mc_platform_init, > + .pci_ops = { > + .map_bus = pci_ecam_map_bus, > + .read = pci_generic_config_read, > + .write = pci_generic_config_write, > + } > +}; [...] If you are using standard ECAM, and it looks like you do, then you can omit the .bus_shift initializer, as since the e7708f5b10e2 ("PCI: Unify ECAM constants in native PCI Express drivers") we use the proper shift value automatically for you, if you don't provide a custom one. Alternatively, you can use the PCIE_ECAM_BUS_SHIFT constant, to avoid open-coding the shift value. Krzysztof