mirror of
https://github.com/qemu/qemu.git
synced 2024-11-30 07:13:38 +08:00
fe8adae345
Currently various acpi hotplug modules like cpu hotplug, memory hotplug, pci hotplug, nvdimm hotplug are all pulled in when CONFIG_ACPI_X86 is turned on. This brings in support for whole lot of subsystems that some targets like mips does not need. They are added just to satisfy symbol dependencies. This is ugly and should be avoided. Targets should be able to pull in just what they need and no more. For example, mips only needs support for PIIX4 and does not need acpi pci hotplug support or cpu hotplug support or memory hotplug support etc. This change is an effort to clean this up. In this change, new config variables are added for various acpi hotplug subsystems. Targets like mips can only enable PIIX4 support and not the rest of all the other modules which were being previously pulled in as a part of CONFIG_ACPI_X86. Function stubs make sure that symbols which piix4 needs but are not required by mips (for example, symbols specific to pci hotplug etc) are available to satisfy the dependencies. Currently, this change only addresses issues with mips malta targets. In future we might be able to clean up other targets which are similarly pulling in lot of unnecessary hotplug modules by enabling ACPI_X86. This change should also address issues such as the following: https://gitlab.com/qemu-project/qemu/-/issues/221 https://gitlab.com/qemu-project/qemu/-/issues/193 Signed-off-by: Ani Sinha <ani@anisinha.ca> Message-Id: <20210812071409.492299-1-ani@anisinha.ca> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
59 lines
810 B
Plaintext
59 lines
810 B
Plaintext
config ACPI
|
|
bool
|
|
|
|
config ACPI_X86
|
|
bool
|
|
select ACPI
|
|
select ACPI_NVDIMM
|
|
select ACPI_CPU_HOTPLUG
|
|
select ACPI_MEMORY_HOTPLUG
|
|
select ACPI_HMAT
|
|
select ACPI_PIIX4
|
|
select ACPI_PCIHP
|
|
|
|
config ACPI_X86_ICH
|
|
bool
|
|
select ACPI_X86
|
|
|
|
config ACPI_CPU_HOTPLUG
|
|
bool
|
|
|
|
config ACPI_MEMORY_HOTPLUG
|
|
bool
|
|
select MEM_DEVICE
|
|
|
|
config ACPI_NVDIMM
|
|
bool
|
|
depends on ACPI
|
|
|
|
config ACPI_PIIX4
|
|
bool
|
|
depends on ACPI
|
|
|
|
config ACPI_PCIHP
|
|
bool
|
|
depends on ACPI
|
|
|
|
config ACPI_HMAT
|
|
bool
|
|
depends on ACPI
|
|
|
|
config ACPI_APEI
|
|
bool
|
|
depends on ACPI
|
|
|
|
config ACPI_PCI
|
|
bool
|
|
depends on ACPI && PCI
|
|
|
|
config ACPI_VMGENID
|
|
bool
|
|
default y
|
|
depends on PC
|
|
|
|
config ACPI_HW_REDUCED
|
|
bool
|
|
select ACPI
|
|
select ACPI_MEMORY_HOTPLUG
|
|
select ACPI_NVDIMM
|