mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-07-21 10:24:33 +00:00
kconfig: add CONFIG_MSI_NONBROKEN
Not all interrupt controllers have a working implementation of message-signalled interrupts; in some cases, the guest may expect MSI to work but it won't due to the buggy or lacking emulation. In QEMU this is represented by the "msi_nonbroken" variable. This patch adds a new configuration symbol enabled whenever the binary contains an interrupt controller that will set "msi_nonbroken". We can then use it to remove devices that cannot be possibly added to the machine, because they require MSI. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
4f5604c41d
commit
ca9b7e29de
|
@ -12,12 +12,15 @@ config IOAPIC
|
||||||
|
|
||||||
config ARM_GIC
|
config ARM_GIC
|
||||||
bool
|
bool
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
||||||
config OPENPIC
|
config OPENPIC
|
||||||
bool
|
bool
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
||||||
config APIC
|
config APIC
|
||||||
bool
|
bool
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
||||||
config ARM_GIC_KVM
|
config ARM_GIC_KVM
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -49,3 +49,4 @@ config PCI_EXPRESS_XILINX
|
||||||
config PCI_EXPRESS_DESIGNWARE
|
config PCI_EXPRESS_DESIGNWARE
|
||||||
bool
|
bool
|
||||||
select PCI_EXPRESS
|
select PCI_EXPRESS
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
|
@ -7,3 +7,9 @@ config PCI_EXPRESS
|
||||||
|
|
||||||
config PCI_DEVICES
|
config PCI_DEVICES
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
config MSI_NONBROKEN
|
||||||
|
# selected by interrupt controllers that do not support MSI,
|
||||||
|
# or support it and have a good implementation. See commit
|
||||||
|
# 47d2b0f33c664533b8dbd5cb17faa8e6a01afe1f.
|
||||||
|
bool
|
||||||
|
|
|
@ -8,6 +8,7 @@ config PSERIES
|
||||||
select VFIO if LINUX # needed by spapr_pci_vfio.c
|
select VFIO if LINUX # needed by spapr_pci_vfio.c
|
||||||
select XICS_SPAPR
|
select XICS_SPAPR
|
||||||
select XIVE_SPAPR
|
select XIVE_SPAPR
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
||||||
config SPAPR_RNG
|
config SPAPR_RNG
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -6,6 +6,7 @@ config HART
|
||||||
|
|
||||||
config SIFIVE
|
config SIFIVE
|
||||||
bool
|
bool
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
||||||
config SIFIVE_E
|
config SIFIVE_E
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -9,3 +9,4 @@ config S390_CCW_VIRTIO
|
||||||
select S390_FLIC
|
select S390_FLIC
|
||||||
select SCLPCONSOLE
|
select SCLPCONSOLE
|
||||||
select VIRTIO_CCW
|
select VIRTIO_CCW
|
||||||
|
select MSI_NONBROKEN
|
||||||
|
|
Loading…
Reference in a new issue