Commit 2f4220bc5f for qemu.org
commit 2f4220bc5ff3bfce3f9ae84945d93fe6913a77b4
Author: Mark Cave-Ayland <mark.caveayland@nutanix.com>
Date: Tue Aug 25 14:41:36 2026 +0100
hw/acpi/piix4.c: convert static variables to static class properties
The majority of the properties in piix4_pm_add_properties() are assigned to
static variables and so can be converted to static class properties. Introduce
piix4_pm_add_class_properties() to hold the static properties and soon all
other class props after they have been converted from object props.
Signed-off-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20260825134320.1039012-16-mark.caveayland@nutanix.com>
diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c
index 1d209ac96d..6462ba970c 100644
--- a/hw/acpi/piix4.c
+++ b/hw/acpi/piix4.c
@@ -406,6 +406,12 @@ static void piix4_pm_machine_ready(Notifier *n, void *opaque)
}
static void piix4_pm_add_properties(PIIX4PMState *s)
+{
+ object_property_add_uint32_ptr(OBJECT(s), ACPI_PM_PROP_PM_IO_BASE,
+ &s->io_base, OBJ_PROP_FLAG_READ);
+}
+
+static void piix4_pm_add_class_properties(ObjectClass *oc)
{
static const uint8_t acpi_enable_cmd = ACPI_ENABLE;
static const uint8_t acpi_disable_cmd = ACPI_DISABLE;
@@ -413,18 +419,26 @@ static void piix4_pm_add_properties(PIIX4PMState *s)
static const uint32_t gpe0_blk_len = GPE_LEN;
static const uint16_t sci_int = 9;
- object_property_add_uint8_ptr(OBJECT(s), ACPI_PM_PROP_ACPI_ENABLE_CMD,
- &acpi_enable_cmd, OBJ_PROP_FLAG_READ);
- object_property_add_uint8_ptr(OBJECT(s), ACPI_PM_PROP_ACPI_DISABLE_CMD,
- &acpi_disable_cmd, OBJ_PROP_FLAG_READ);
- object_property_add_uint32_ptr(OBJECT(s), ACPI_PM_PROP_GPE0_BLK,
- &gpe0_blk, OBJ_PROP_FLAG_READ);
- object_property_add_uint32_ptr(OBJECT(s), ACPI_PM_PROP_GPE0_BLK_LEN,
- &gpe0_blk_len, OBJ_PROP_FLAG_READ);
- object_property_add_uint16_ptr(OBJECT(s), ACPI_PM_PROP_SCI_INT,
- &sci_int, OBJ_PROP_FLAG_READ);
- object_property_add_uint32_ptr(OBJECT(s), ACPI_PM_PROP_PM_IO_BASE,
- &s->io_base, OBJ_PROP_FLAG_READ);
+ object_class_static_property_add_uint8_ptr(oc,
+ ACPI_PM_PROP_ACPI_ENABLE_CMD,
+ &acpi_enable_cmd,
+ OBJ_PROP_FLAG_READ);
+ object_class_static_property_add_uint8_ptr(oc,
+ ACPI_PM_PROP_ACPI_DISABLE_CMD,
+ &acpi_disable_cmd,
+ OBJ_PROP_FLAG_READ);
+ object_class_static_property_add_uint32_ptr(oc,
+ ACPI_PM_PROP_GPE0_BLK,
+ &gpe0_blk,
+ OBJ_PROP_FLAG_READ);
+ object_class_static_property_add_uint32_ptr(oc,
+ ACPI_PM_PROP_GPE0_BLK_LEN,
+ &gpe0_blk_len,
+ OBJ_PROP_FLAG_READ);
+ object_class_static_property_add_uint16_ptr(oc,
+ ACPI_PM_PROP_SCI_INT,
+ &sci_int,
+ OBJ_PROP_FLAG_READ);
}
static void piix4_pm_realize(PCIDevice *dev, Error **errp)
@@ -616,6 +630,8 @@ static void piix4_pm_class_init(ObjectClass *klass, const void *data)
offsetof(PIIX4PMState,
acpi_pci_hotplug.io_len),
OBJ_PROP_FLAG_READ);
+
+ piix4_pm_add_class_properties(klass);
}
static const TypeInfo piix4_pm_info = {