1#ifndef ACPI_DEV_INTERFACE_H 2#define ACPI_DEV_INTERFACE_H 3 4#include "qom/object.h" 5#include "qapi-types.h" 6 7#define TYPE_ACPI_DEVICE_IF "acpi-device-interface" 8 9#define ACPI_DEVICE_IF_CLASS(klass) \ 10 OBJECT_CLASS_CHECK(AcpiDeviceIfClass, (klass), \ 11 TYPE_ACPI_DEVICE_IF) 12#define ACPI_DEVICE_IF_GET_CLASS(obj) \ 13 OBJECT_GET_CLASS(AcpiDeviceIfClass, (obj), \ 14 TYPE_ACPI_DEVICE_IF) 15#define ACPI_DEVICE_IF(obj) \ 16 INTERFACE_CHECK(AcpiDeviceIf, (obj), \ 17 TYPE_ACPI_DEVICE_IF) 18 19 20typedef struct AcpiDeviceIf { 21 /* <private> */ 22 Object Parent; 23} AcpiDeviceIf; 24 25/** 26 * AcpiDeviceIfClass: 27 * 28 * ospm_status: returns status of ACPI device objects, reported 29 * via _OST method if device supports it. 30 * 31 * Interface is designed for providing unified interface 32 * to generic ACPI functionality that could be used without 33 * knowledge about internals of actual device that implements 34 * ACPI interface. 35 */ 36typedef struct AcpiDeviceIfClass { 37 /* <private> */ 38 InterfaceClass parent_class; 39 40 /* <public> */ 41 void (*ospm_status)(AcpiDeviceIf *adev, ACPIOSTInfoList ***list); 42} AcpiDeviceIfClass; 43#endif 44