|  | /* | 
|  | * QMP commands related to ACPI | 
|  | * | 
|  | * This work is licensed under the terms of the GNU GPL, version 2 or | 
|  | * (at your option) any later version. | 
|  | */ | 
|  |  | 
|  | #include "qemu/osdep.h" | 
|  | #include "hw/acpi/acpi_dev_interface.h" | 
|  | #include "qapi/error.h" | 
|  | #include "qapi/qapi-commands-acpi.h" | 
|  |  | 
|  | ACPIOSTInfoList *qmp_query_acpi_ospm_status(Error **errp) | 
|  | { | 
|  | bool ambig; | 
|  | ACPIOSTInfoList *head = NULL; | 
|  | ACPIOSTInfoList **prev = &head; | 
|  | Object *obj = object_resolve_path_type("", TYPE_ACPI_DEVICE_IF, &ambig); | 
|  |  | 
|  | if (obj) { | 
|  | AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_GET_CLASS(obj); | 
|  | AcpiDeviceIf *adev = ACPI_DEVICE_IF(obj); | 
|  |  | 
|  | adevc->ospm_status(adev, &prev); | 
|  | } else { | 
|  | error_setg(errp, "command is not supported, missing ACPI device"); | 
|  | } | 
|  |  | 
|  | return head; | 
|  | } |