qemu-e2k/hw/acpi
Jonathan Cameron c28db9e000 hw/pci-bridge: Make PCIe and CXL PXB Devices inherit from TYPE_PXB_DEV
Previously, PXB_CXL_DEVICE, PXB_PCIE_DEVICE and PXB_DEVICE all
have PCI_DEVICE as their direct parent but share a common state
struct PXBDev. convert_to_pxb() is used to get the PXBDev
instance from which ever of these types it is called on.

This patch switches to an explicit hierarchy based on shared
functionality.  To allow use of OBJECT_DECLARE_SIMPLE_TYPE()
whilst minimizing code changes, all types are renamed to have
the postfix _DEV rather than _DEVICE.  The new heirarchy
has PXB_CXL_DEV with parent PXB_PCIE_DEV which in turn
has parent PXB_DEV which continues to have parent PCI_DEVICE.

This allows simple use of PXB_DEV() etc rather than a custom function
+ removal of duplicated properties and moving the CXL specific
elements out of struct PXBDev.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230420142750.6950-3-Jonathan.Cameron@huawei.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2023-04-24 22:56:55 -04:00
..
acpi_interface.c hw/isa/isa-bus: Turn isa_build_aml() into qbus_build_aml() 2023-01-27 11:47:02 -05:00
acpi-cpu-hotplug-stub.c
acpi-mem-hotplug-stub.c
acpi-nvdimm-stub.c
acpi-pci-hotplug-stub.c pcihp: add ACPI PCI hotplug specific is_hotpluggable_bus() callback 2023-03-07 12:39:00 -05:00
acpi-qmp-cmds.c acpi: Move the QMP command from monitor/ to hw/acpi/ 2023-02-04 07:56:54 +01:00
acpi-stub.c hw/acpi: Dumb down acpi_table_add() stub 2023-02-23 14:10:17 +01:00
acpi-x86-stub.c hw/acpi/acpi_dev_interface: Remove unused parameter from AcpiDeviceIfClass::madt_cpu 2023-01-27 11:47:02 -05:00
aml-build-stub.c
aml-build.c hw/acpi/aml-build: Only generate cluster node in PPTT when specified 2023-01-08 01:54:23 -05:00
bios-linker-loader.c
core.c
cpu_hotplug.c acpi: cpuhp: fix guest-visible maximum access size to the legacy reg block 2023-01-08 01:54:23 -05:00
cpu.c hw/acpi/acpi_dev_interface: Remove unused parameter from AcpiDeviceIfClass::madt_cpu 2023-01-27 11:47:02 -05:00
cxl-stub.c
cxl.c hw/pci-bridge: Make PCIe and CXL PXB Devices inherit from TYPE_PXB_DEV 2023-04-24 22:56:55 -04:00
erst.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
generic_event_device.c
ghes-stub.c
ghes.c
hmat.c
hmat.h
ich9_tco.c hw: Move ich9.h to southbridge/ 2023-02-27 22:29:01 +01:00
ich9.c pcihp: add ACPI PCI hotplug specific is_hotpluggable_bus() callback 2023-03-07 12:39:00 -05:00
ipmi-stub.c
ipmi.c
Kconfig pcihp: make bridge describe itself using AcpiDevAmlIfClass:build_dev_aml 2023-01-28 06:21:29 -05:00
memory_hotplug.c
meson.build acpi: Move the QMP command from monitor/ to hw/acpi/ 2023-02-04 07:56:54 +01:00
nvdimm.c
pci-bridge-stub.c pcihp: make bridge describe itself using AcpiDevAmlIfClass:build_dev_aml 2023-01-28 06:21:29 -05:00
pci-bridge.c acpi: pci: move out ACPI PCI hotplug generator from generic slot generator build_append_pci_bus_devices() 2023-03-07 12:39:00 -05:00
pci.c
pcihp.c acpi: pcihp: allow repeating hot-unplug requests 2023-04-24 22:56:55 -04:00
piix4.c pcihp: add ACPI PCI hotplug specific is_hotpluggable_bus() callback 2023-03-07 12:39:00 -05:00
tpm.c
trace-events
trace.h
utils.c
viot.c
viot.h
vmgenid.c hw/acpi: Move QMP command to hw/core/ 2023-02-23 14:10:17 +01:00