mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 02:24:58 -06:00
acpi: extend ACPI interface to provide send_event hook
send_event() hook will allow to send ACPI event in a target specific way (GPE or GPIO based impl.) it will also simplify proxy wrappers in piix4pm/ich9 that access ACPI regs and SCI which are part of piix4pm/lcp_ich9 devices and call acpi_foo() API directly. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>
This commit is contained in:
parent
6d42eefad8
commit
eaf23bf794
6 changed files with 39 additions and 9 deletions
|
@ -703,6 +703,13 @@ static Property ich9_lpc_properties[] = {
|
|||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static void ich9_send_gpe(AcpiDeviceIf *adev, AcpiEventStatusBits ev)
|
||||
{
|
||||
ICH9LPCState *s = ICH9_LPC_DEVICE(adev);
|
||||
|
||||
acpi_send_gpe_event(&s->pm.acpi_regs, s->pm.irq, ev);
|
||||
}
|
||||
|
||||
static void ich9_lpc_class_init(ObjectClass *klass, void *data)
|
||||
{
|
||||
DeviceClass *dc = DEVICE_CLASS(klass);
|
||||
|
@ -730,6 +737,7 @@ static void ich9_lpc_class_init(ObjectClass *klass, void *data)
|
|||
hc->unplug_request = ich9_device_unplug_request_cb;
|
||||
hc->unplug = ich9_device_unplug_cb;
|
||||
adevc->ospm_status = ich9_pm_ospm_status;
|
||||
adevc->send_event = ich9_send_gpe;
|
||||
}
|
||||
|
||||
static const TypeInfo ich9_lpc_info = {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue