From: Yang Zhong <yang.zh...@intel.com> Make pcie splited from pci and make it configurable.
Signed-off-by: Yang Zhong <yang.zh...@intel.com> Cc: Michael S. Tsirkin <m...@redhat.com> Reviewed-by: Thomas Huth <th...@redhat.com> Message-Id: <20190123065618.3520-30-yang.zh...@intel.com> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- default-configs/arm-softmmu.mak | 1 + default-configs/i386-softmmu.mak | 1 + default-configs/mips64el-softmmu.mak | 1 + default-configs/ppc-softmmu.mak | 1 + default-configs/riscv32-softmmu.mak | 1 + default-configs/riscv64-softmmu.mak | 1 + hw/pci/Kconfig | 4 ++++ hw/pci/Makefile.objs | 9 +++++++-- 8 files changed, 17 insertions(+), 2 deletions(-) diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak index b0995a0..59cf3d2 100644 --- a/default-configs/arm-softmmu.mak +++ b/default-configs/arm-softmmu.mak @@ -121,6 +121,7 @@ CONFIG_VERSATILE=y CONFIG_VERSATILE_PCI=y CONFIG_VERSATILE_I2C=y +CONFIG_PCI_EXPRESS=y CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y CONFIG_VFIO_PLATFORM=y CONFIG_VFIO_XGMAC=y diff --git a/default-configs/i386-softmmu.mak b/default-configs/i386-softmmu.mak index 412c8c5..b5281d3 100644 --- a/default-configs/i386-softmmu.mak +++ b/default-configs/i386-softmmu.mak @@ -44,6 +44,7 @@ CONFIG_ISA_TESTDEV=y CONFIG_VMPORT=y CONFIG_SGA=y CONFIG_LPC_ICH9=y +CONFIG_PCI_EXPRESS=y CONFIG_PCI_EXPRESS_Q35=y CONFIG_APIC=y CONFIG_IOAPIC=y diff --git a/default-configs/mips64el-softmmu.mak b/default-configs/mips64el-softmmu.mak index 9eb1208..c6ad4da 100644 --- a/default-configs/mips64el-softmmu.mak +++ b/default-configs/mips64el-softmmu.mak @@ -12,4 +12,5 @@ CONFIG_JAZZ_LED=y CONFIG_VT82C686=y CONFIG_MIPS_BOSTON=y CONFIG_FITLOADER=y +CONFIG_PCI_EXPRESS=y CONFIG_PCI_EXPRESS_XILINX=y diff --git a/default-configs/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak index 90118cb..47e4177 100644 --- a/default-configs/ppc-softmmu.mak +++ b/default-configs/ppc-softmmu.mak @@ -23,6 +23,7 @@ CONFIG_ETSEC=y CONFIG_PPC405=y CONFIG_PPC440=y CONFIG_VIRTEX=y +CONFIG_PCI_EXPRESS=y # For Sam460ex CONFIG_SAM460EX=y diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak index 6533716..8c3a91a 100644 --- a/default-configs/riscv32-softmmu.mak +++ b/default-configs/riscv32-softmmu.mak @@ -8,6 +8,7 @@ CONFIG_VIRTIO_MMIO=y CONFIG_CADENCE=y +CONFIG_PCI_EXPRESS=y CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y CONFIG_VGA=y diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak index 6533716..8c3a91a 100644 --- a/default-configs/riscv64-softmmu.mak +++ b/default-configs/riscv64-softmmu.mak @@ -8,6 +8,7 @@ CONFIG_VIRTIO_MMIO=y CONFIG_CADENCE=y +CONFIG_PCI_EXPRESS=y CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y CONFIG_VGA=y diff --git a/hw/pci/Kconfig b/hw/pci/Kconfig index d3d2205..4ca2537 100644 --- a/hw/pci/Kconfig +++ b/hw/pci/Kconfig @@ -1,2 +1,6 @@ config PCI bool + +config PCI_EXPRESS + bool + select PCI diff --git a/hw/pci/Makefile.objs b/hw/pci/Makefile.objs index 9f905e6..c78f2fb 100644 --- a/hw/pci/Makefile.objs +++ b/hw/pci/Makefile.objs @@ -2,8 +2,13 @@ common-obj-$(CONFIG_PCI) += pci.o pci_bridge.o common-obj-$(CONFIG_PCI) += msix.o msi.o common-obj-$(CONFIG_PCI) += shpc.o common-obj-$(CONFIG_PCI) += slotid_cap.o -common-obj-$(CONFIG_PCI) += pci_host.o pcie_host.o -common-obj-$(CONFIG_PCI) += pcie.o pcie_aer.o pcie_port.o +common-obj-$(CONFIG_PCI) += pci_host.o + +# The functions in these modules can be used by devices too. Since we +# allow plugging PCIe devices into PCI buses, include them even if +# CONFIG_PCI_EXPRESS=n. +common-obj-$(CONFIG_PCI) += pcie.o pcie_aer.o +common-obj-$(CONFIG_PCI_EXPRESS) += pcie_port.o pcie_host.o common-obj-$(call lnot,$(CONFIG_PCI)) += pci-stub.o common-obj-$(CONFIG_ALL) += pci-stub.o -- 1.8.3.1