Browse Source

hw/acpi: Move acpi_send_event() function out of acpi_interface.c

acpi_interface.c should only register QOM interfaces. Move
the acpi_send_event() function to core.c with the other
event handlers, and its declaration in 'hw/acpi/acpi.h'.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20260225035739.42848-3-philmd@linaro.org>
master
Philippe Mathieu-Daudé 1 month ago
parent
commit
75e92ebbdf
  1. 9
      hw/acpi/acpi_interface.c
  2. 10
      hw/acpi/core.c
  3. 1
      include/hw/acpi/acpi.h
  4. 2
      include/hw/acpi/acpi_dev_interface.h

9
hw/acpi/acpi_interface.c

@ -4,15 +4,6 @@
#include "qemu/module.h"
#include "qemu/queue.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);
}
}
void qbus_build_aml(BusState *bus, Aml *scope)
{
BusChild *kid;

10
hw/acpi/core.c

@ -22,6 +22,7 @@
#include "qemu/osdep.h"
#include "hw/core/irq.h"
#include "hw/acpi/acpi.h"
#include "hw/acpi/acpi_dev_interface.h"
#include "hw/nvram/fw_cfg.h"
#include "qemu/config-file.h"
#include "qapi/error.h"
@ -753,3 +754,12 @@ void acpi_update_sci(ACPIREGS *regs, qemu_irq irq)
(regs->pm1.evt.en & ACPI_BITMASK_TIMER_ENABLE) &&
!(pm1a_sts & ACPI_BITMASK_TIMER_STATUS));
}
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);
}
}

1
include/hw/acpi/acpi.h

@ -182,6 +182,7 @@ void acpi_gpe_reset(ACPIREGS *ar);
void acpi_gpe_ioport_writeb(ACPIREGS *ar, uint32_t addr, uint32_t val);
uint32_t acpi_gpe_ioport_readb(ACPIREGS *ar, uint32_t addr);
void acpi_send_event(DeviceState *dev, AcpiEventStatusBits event);
void acpi_send_gpe_event(ACPIREGS *ar, qemu_irq irq,
AcpiEventStatusBits status);

2
include/hw/acpi/acpi_dev_interface.h

@ -27,8 +27,6 @@ DECLARE_CLASS_CHECKERS(AcpiDeviceIfClass, ACPI_DEVICE_IF,
typedef struct AcpiDeviceIf AcpiDeviceIf;
void acpi_send_event(DeviceState *dev, AcpiEventStatusBits event);
/**
* AcpiDeviceIfClass:
*

Loading…
Cancel
Save