qemu/include/hw/acpi
Salil Mehta 06f1f4958b hw/acpi: Update ACPI GED framework to support vCPU Hotplug
ACPI GED (as described in the ACPI 6.4 spec) uses an interrupt listed in the
_CRS object of GED to intimate OSPM about an event. Later then demultiplexes the
notified event by evaluating ACPI _EVT method to know the type of event. Use
ACPI GED to also notify the guest kernel about any CPU hot(un)plug events.

Note, GED interface is used by many hotplug events like memory hotplug, NVDIMM
hotplug and non-hotplug events like system power down event. Each of these can
be selected using a bit in the 32 bit GED IO interface. A bit has been reserved
for the CPU hotplug event.

ACPI CPU hotplug related initialization should only happen if ACPI_CPU_HOTPLUG
support has been enabled for particular architecture. Add cpu_hotplug_hw_init()
stub to avoid compilation break.

Co-developed-by: Keqian Zhu <zhukeqian1@huawei.com>
Signed-off-by: Keqian Zhu <zhukeqian1@huawei.com>
Signed-off-by: Salil Mehta <salil.mehta@huawei.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Shaoqin Huang <shahuang@redhat.com>
Tested-by: Vishnu Pajjuri <vishnu@os.amperecomputing.com>
Tested-by: Xianglai Li <lixianglai@loongson.cn>
Tested-by: Miguel Luis <miguel.luis@oracle.com>
Reviewed-by: Vishnu Pajjuri <vishnu@os.amperecomputing.com>
Tested-by: Zhao Liu <zhao1.liu@intel.com>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Message-Id: <20240716111502.202344-4-salil.mehta@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Igor Mammedov <imammedo@redhat.com>
2024-07-22 20:15:41 -04:00
..
acpi-defs.h hw/arm/virt-acpi-build.c: Migrate SPCR creation to common location 2024-03-08 15:38:46 +10:00
acpi.h replace TABs with spaces 2023-03-20 12:43:50 +01:00
acpi_aml_interface.h hw/isa/isa-bus: Turn isa_build_aml() into qbus_build_aml() 2023-01-27 11:47:02 -05:00
acpi_dev_interface.h hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h" 2023-10-04 18:15:05 -04:00
acpi_generic_initiator.h hw/acpi: Implement the SRAT GI affinity structure 2024-03-12 17:56:55 -04:00
aml-build.h hw/arm/virt-acpi-build.c: Migrate SPCR creation to common location 2024-03-08 15:38:46 +10:00
bios-linker-loader.h vmgenid: replace x-write-pointer-available hack 2017-09-08 16:15:17 +03:00
cpu.h hw/acpi: Move CPU ctrl-dev MMIO region len macro to common header file 2024-07-22 20:15:41 -04:00
cpu_hotplug.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
cxl.h hw/cxl: Add QTG _DSM support for ACPI0017 device 2023-10-22 05:18:17 -04:00
erst.h include: Include headers where needed 2023-01-08 01:54:22 -05:00
generic_event_device.h hw/acpi: Update ACPI GED framework to support vCPU Hotplug 2024-07-22 20:15:41 -04:00
ghes.h hw/acpi: Provide function acpi_ghes_present() 2021-06-21 16:49:37 +01:00
ich9.h pcihp: add ACPI PCI hotplug specific is_hotpluggable_bus() callback 2023-03-07 12:39:00 -05:00
ich9_tco.h hw/acpi/ich9_tco: Include missing 'migration/vmstate.h' header 2024-02-22 12:47:40 +01:00
ipmi.h acpi: ipmi: use AcpiDevAmlIf interface to build IPMI device descriptors 2022-06-09 19:32:49 -04:00
memory_hotplug.h hw/acpi: Include missing 'qapi/qapi-types-acpi.h' generated header 2024-02-22 12:47:40 +01:00
pc-hotplug.h include/: spelling fixes 2023-09-08 13:08:52 +03:00
pci.h pcihp: make bridge describe itself using AcpiDevAmlIfClass:build_dev_aml 2023-01-28 06:21:29 -05:00
pcihp.h hw/acpi/pcihp: Clean up global variable shadowing in acpi_pcihp_init() 2023-10-19 23:13:28 +02:00
piix4.h pcihp: move fields enabling hotplug into AcpiPciHpState 2023-03-07 12:39:00 -05:00
tpm.h tpm: Extend common APIs to support TPM TIS I2C 2023-04-20 08:17:15 -04:00
utils.h acpi: Move maximum size logic into acpi_add_rom_blob() 2021-03-22 18:58:19 -04:00
vmgenid.h include/: spelling fixes 2023-09-08 13:08:52 +03:00