aboutsummaryrefslogtreecommitdiffstats
path: root/hw
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2012-02-23 13:45:18 +0100
committerAnthony Liguori <aliguori@us.ibm.com>2012-02-24 13:36:02 -0600
commit8283c4f565a26b3415961c481d980310c83dd2b4 (patch)
tree13ab2d296d5e3e7db06a4353bd6ddabb68eb2f93 /hw
parent2886be1b01c274570fa139748a402207482405bd (diff)
acpi: add acpi_pm1_evt_write_en
Do APCIREGS->pm1.evt.en updates using the new acpi_pm1_evt_write_en function, so the acpi code will see those updates. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/acpi.c5
-rw-r--r--hw/acpi.h1
-rw-r--r--hw/acpi_piix4.c2
-rw-r--r--hw/vt82c686.c2
4 files changed, 8 insertions, 2 deletions
diff --git a/hw/acpi.c b/hw/acpi.c
index 112933559..407949bfa 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -268,6 +268,11 @@ void acpi_pm1_evt_write_sts(ACPIREGS *ar, uint16_t val)
ar->pm1.evt.sts &= ~val;
}
+void acpi_pm1_evt_write_en(ACPIREGS *ar, uint16_t val)
+{
+ ar->pm1.evt.en = val;
+}
+
void acpi_pm1_evt_power_down(ACPIREGS *ar)
{
if (ar->pm1.evt.en & ACPI_BITMASK_POWER_BUTTON_ENABLE) {
diff --git a/hw/acpi.h b/hw/acpi.h
index e1d5e3b0c..88f805119 100644
--- a/hw/acpi.h
+++ b/hw/acpi.h
@@ -133,6 +133,7 @@ static inline int64_t acpi_pm_tmr_get_clock(void)
/* PM1a_EVT: piix and ich9 don't implement PM1b. */
uint16_t acpi_pm1_evt_get_sts(ACPIREGS *ar);
void acpi_pm1_evt_write_sts(ACPIREGS *ar, uint16_t val);
+void acpi_pm1_evt_write_en(ACPIREGS *ar, uint16_t val);
void acpi_pm1_evt_power_down(ACPIREGS *ar);
void acpi_pm1_evt_reset(ACPIREGS *ar);
diff --git a/hw/acpi_piix4.c b/hw/acpi_piix4.c
index 5b16d2039..164122977 100644
--- a/hw/acpi_piix4.c
+++ b/hw/acpi_piix4.c
@@ -117,7 +117,7 @@ static void pm_ioport_write(IORange *ioport, uint64_t addr, unsigned width,
pm_update_sci(s);
break;
case 0x02:
- s->ar.pm1.evt.en = val;
+ acpi_pm1_evt_write_en(&s->ar, val);
pm_update_sci(s);
break;
case 0x04:
diff --git a/hw/vt82c686.c b/hw/vt82c686.c
index 1b083de09..a53bd8ad0 100644
--- a/hw/vt82c686.c
+++ b/hw/vt82c686.c
@@ -206,7 +206,7 @@ static void pm_ioport_writew(void *opaque, uint32_t addr, uint32_t val)
pm_update_sci(s);
break;
case 0x02:
- s->ar.pm1.evt.en = val;
+ acpi_pm1_evt_write_en(&s->ar, val);
pm_update_sci(s);
break;
case 0x04: