i386: express dependencies with Kconfig

This way, the default-configs file only need to specify the boards
and any optional devices.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Yang Zhong <yang.zhong@intel.com>
Message-Id: <20190123065618.3520-37-yang.zhong@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2019-01-23 14:56:10 +08:00
parent a7e2315907
commit 02017ee385
8 changed files with 72 additions and 40 deletions

View file

@ -8,16 +8,65 @@ config PC
imply SEV
imply TPM_CRB
imply TPM_TIS
select FDC
select I8259
select I8254
select PCSPK
select I82374
select I8257
select MC146818RTC
config PC_PCI
bool
select APIC
select IOAPIC
select APM
select PC
config PC_ACPI
bool
select ACPI_X86
select ACPI_CPU_HOTPLUG
select ACPI_MEMORY_HOTPLUG
depends on ACPI_SMBUS
config I440FX
bool
select PC_PCI
select PC_ACPI
select ACPI_SMBUS
select PCI_PIIX
select IDE_PIIX
select DIMM
select SMBIOS
select VMPORT
select VMMOUSE
select FW_CFG_DMA
config ISAPC
bool
select ISA_BUS
select PC
select IDE_ISA
select VGA_ISA
# FIXME: it is in the same file as i440fx, and does not compile
# if separated
depends on I440FX
config Q35
bool
imply VTD
imply AMD_IOMMU
select PC_PCI
select PC_ACPI
select PCI_EXPRESS_Q35
select LPC_ICH9
select AHCI
select DIMM
select SMBIOS
select VMPORT
select VMMOUSE
select FW_CFG_DMA
config VTD
bool
@ -30,3 +79,4 @@ config VMPORT
config VMMOUSE
bool
depends on VMPORT

View file

@ -4,8 +4,9 @@ obj-y += pc.o
obj-$(CONFIG_I440FX) += pc_piix.o
obj-$(CONFIG_Q35) += pc_q35.o
obj-y += pc_sysfw.o
obj-$(CONFIG_VTD) += x86-iommu.o intel_iommu.o
obj-$(CONFIG_AMD_IOMMU) += x86-iommu.o amd_iommu.o
obj-y += x86-iommu.o
obj-$(CONFIG_VTD) += intel_iommu.o
obj-$(CONFIG_AMD_IOMMU) += amd_iommu.o
obj-$(CONFIG_XEN) += ../xenpv/ xen/
obj-$(CONFIG_VMPORT) += vmport.o
obj-$(CONFIG_VMMOUSE) += vmmouse.o