On Wed, 5 Feb 2020 21:41:15 +0100 Laurent Vivier <lviv...@redhat.com> wrote:
> When PHB4 bridge has been added, the dependencies to PCIE_PORT has been > added to XIVE_SPAPR and indirectly to PSERIES. > The build of the PowerNV machine is fine while we also build the PSERIES > machine. > If we disable the PSERIES machine, the PowerNV build fails because the > PCI Express files are not built: > > /usr/bin/ld: hw/ppc/pnv.o: in function `pnv_chip_power8_pic_print_info': > .../hw/ppc/pnv.c:623: undefined reference to `pnv_phb3_msi_pic_print_info' > /usr/bin/ld: hw/ppc/pnv.o: in function `pnv_chip_power9_pic_print_info': > .../hw/ppc/pnv.c:639: undefined reference to `pnv_phb4_pic_print_info' > /usr/bin/ld: ../hw/usb/hcd-ehci-pci.o: in function > `usb_ehci_pci_write_config': > .../hw/usb/hcd-ehci-pci.c:129: undefined reference to > `pci_default_write_config' > /usr/bin/ld: ../hw/usb/hcd-ehci-pci.o: in function `usb_ehci_pci_realize': > .../hw/usb/hcd-ehci-pci.c:68: undefined reference to `pci_allocate_irq' > /usr/bin/ld: .../hw/usb/hcd-ehci-pci.c:72: undefined reference to > `pci_register_bar' > /usr/bin/ld: ../hw/usb/hcd-ehci-pci.o:(.data.rel+0x50): undefined reference > to `vmstate_pci_device' > > This patch fixes the problem by adding needed dependencies to POWERNV. > > Fixes: 4f9924c4d4cf ("ppc/pnv: Add models for POWER9 PHB4 PCIe Host bridge") > Signed-off-by: Laurent Vivier <lviv...@redhat.com> > --- > hw/ppc/Kconfig | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig > index 354828bf132f..3e11d0b53e11 100644 > --- a/hw/ppc/Kconfig > +++ b/hw/ppc/Kconfig > @@ -29,6 +29,10 @@ config POWERNV > select XICS > select XIVE > select FDT_PPC > + select PCI Is it needed since PCI_EXPRESS already selects PCI in hw/pci/Kconfig ? Apart from that: Reviewed-by: Greg Kurz <gr...@kaod.org> > + select PCI_EXPRESS > + select MSI_NONBROKEN > + select PCIE_PORT > > config PPC405 > bool > @@ -135,8 +139,6 @@ config XIVE_SPAPR > default y > depends on PSERIES > select XIVE > - select PCI > - select PCIE_PORT > > config XIVE_KVM > bool