summaryrefslogtreecommitdiffstats
path: root/hw/acpi/acpi_interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/acpi/acpi_interface.c')
-rw-r--r--hw/acpi/acpi_interface.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/hw/acpi/acpi_interface.c b/hw/acpi/acpi_interface.c
new file mode 100644
index 00000000..c668d361
--- /dev/null
+++ b/hw/acpi/acpi_interface.c
@@ -0,0 +1,33 @@
+#include "qemu/osdep.h"
+#include "hw/acpi/acpi_dev_interface.h"
+#include "hw/acpi/acpi_aml_interface.h"
+#include "qemu/module.h"
+
+void acpi_send_event(DeviceState *dev, AcpiEventStatusBits event)
+{
+ AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_GET_CLASS(dev);
+ if (adevc->send_event) {
+ AcpiDeviceIf *adev = ACPI_DEVICE_IF(dev);
+ adevc->send_event(adev, event);
+ }
+}
+
+static void register_types(void)
+{
+ static const TypeInfo acpi_dev_if_info = {
+ .name = TYPE_ACPI_DEVICE_IF,
+ .parent = TYPE_INTERFACE,
+ .class_size = sizeof(AcpiDeviceIfClass),
+ };
+ static const TypeInfo acpi_dev_aml_if_info = {
+ .name = TYPE_ACPI_DEV_AML_IF,
+ .parent = TYPE_INTERFACE,
+ .class_size = sizeof(AcpiDevAmlIfClass),
+ };
+
+
+ type_register_static(&acpi_dev_if_info);
+ type_register_static(&acpi_dev_aml_if_info);
+}
+
+type_init(register_types)