qemu/hw/i386/Kconfig
Philippe Mathieu-Daudé df90457cf5 hw/i386/Kconfig: Add missing Kconfig dependency (runtime error)
When building the 'microvm' machine stand-alone we get:

  $ qemu-system-x86_64 -M microvm
  **
  ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)
  Bail out! ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)
  Aborted (core dumped)

Looking at the backtrace:

  (gdb) bt
  #3  0x00007ff2330492ff in g_assertion_message_expr () at /lib64/libglib-2.0.so.0
  #4  0x000055a878c18341 in object_new_with_type (type=<optimized out>) at qom/object.c:714
  #5  0x000055a878c18399 in object_new (typename=typename@entry=0x55a878dec36a "isa-pit") at qom/object.c:747
  #6  0x000055a878cc8146 in qdev_new (name=name@entry=0x55a878dec36a "isa-pit") at hw/core/qdev.c:153
  #7  0x000055a878a8b439 in isa_new (name=name@entry=0x55a878dec36a "isa-pit") at hw/isa/isa-bus.c:160
  #8  0x000055a878adb782 in i8254_pit_init (base=64, isa_irq=0, alt_irq=0x0, bus=0x55a87ab38760) at include/hw/timer/i8254.h:54
  #9  microvm_devices_init (mms=0x55a87ac36800) at hw/i386/microvm.c:263
  #10 microvm_machine_state_init (machine=<optimized out>) at hw/i386/microvm.c:471
  #11 0x000055a878a944ab in machine_run_board_init (machine=machine@entry=0x55a87ac36800) at hw/core/machine.c:1239

The "isa-pit" type (TYPE_I8254) is missing. Add it.

Fixes: 0ebf007dda ("hw/i386: Introduce the microvm machine type")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20210616204328.2611406-24-philmd@redhat.com>
2021-07-20 15:29:46 +02:00

134 lines
2.2 KiB
Plaintext

config X86_FW_OVMF
bool
config SEV
bool
select X86_FW_OVMF
depends on KVM
config PC
bool
imply APPLESMC
imply HYPERV
imply ISA_IPMI_KCS
imply ISA_IPMI_BT
imply PCI_IPMI_KCS
imply PCI_IPMI_BT
imply IPMI_SSIF
imply ISA_DEBUG
imply PARALLEL
imply PCI_DEVICES
imply PVPANIC_ISA
imply QXL
imply SEV
imply SGA
imply TEST_DEVICES
imply TPM_CRB
imply TPM_TIS_ISA
imply VGA_PCI
imply VIRTIO_VGA
imply NVDIMM
select FDC_ISA
select I8259
select I8254
select PCKBD
select PCSPK
select I8257
select MC146818RTC
# For ACPI builder:
select SERIAL_ISA
select ACPI_PCI
select ACPI_VMGENID
select VIRTIO_PMEM_SUPPORTED
select VIRTIO_MEM_SUPPORTED
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
select SMBUS_EEPROM
select PFLASH_CFI01
depends on ACPI_SMBUS
config I440FX
bool
imply E1000_PCI
imply VMPORT
imply VMMOUSE
select PC_PCI
select PC_ACPI
select ACPI_SMBUS
select PCI_I440FX
select PIIX3
select IDE_PIIX
select DIMM
select SMBIOS
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
imply E1000E_PCI_EXPRESS
imply VMPORT
imply VMMOUSE
select PC_PCI
select PC_ACPI
select PCI_EXPRESS_Q35
select LPC_ICH9
select AHCI_ICH9
select DIMM
select SMBIOS
select FW_CFG_DMA
config MICROVM
bool
select SERIAL_ISA # for serial_hds_isa_init()
select ISA_BUS
select APIC
select IOAPIC
select I8259
select MC146818RTC
select VIRTIO_MMIO
select ACPI_HW_REDUCED
select PCI_EXPRESS_GENERIC_BRIDGE
select USB_XHCI_SYSBUS
select I8254
config X86_IOMMU
bool
depends on PC
config VTD
bool
select X86_IOMMU
config AMD_IOMMU
bool
select X86_IOMMU
config VMPORT
bool
config VMMOUSE
bool
depends on VMPORT