diff options
author | njl <njl@FreeBSD.org> | 2003-08-29 04:02:19 +0000 |
---|---|---|
committer | njl <njl@FreeBSD.org> | 2003-08-29 04:02:19 +0000 |
commit | b5438b54303dbc8d523f6cdc914d2e4e37bb59fb (patch) | |
tree | d54715d8d3a15f359e394a41d14f08964412c5c9 /sys/i386/acpica | |
parent | 89874a1f1d2097be6ab2ccb3535359238a189b1d (diff) | |
download | FreeBSD-src-b5438b54303dbc8d523f6cdc914d2e4e37bb59fb.zip FreeBSD-src-b5438b54303dbc8d523f6cdc914d2e4e37bb59fb.tar.gz |
Use the ACPICA AcpiEnterSleepStateS4bios instead of rolling our own. This
change also disables interrupts around non-S4 suspends whereas before we
did not do this. Our version of AcpiEnterSleepStateS4bios was almost
identical to the ACPICA version.
Diffstat (limited to 'sys/i386/acpica')
-rw-r--r-- | sys/i386/acpica/acpi_wakeup.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/i386/acpica/acpi_wakeup.c b/sys/i386/acpica/acpi_wakeup.c index e2a029f..106df55 100644 --- a/sys/i386/acpica/acpi_wakeup.c +++ b/sys/i386/acpica/acpi_wakeup.c @@ -52,7 +52,6 @@ __FBSDID("$FreeBSD$"); #include <i386/isa/intr_machdep.h> #include "acpi.h" -#include <dev/acpica/acpica_support.h> #include <dev/acpica/acpivar.h> #include "acpi_wakecode.h" @@ -254,12 +253,14 @@ acpi_sleep_machdep(struct acpi_softc *sc, int state) if (acpi_get_verbose(sc)) acpi_printcpu(); + /* Call ACPICA to enter the desired sleep state */ + ACPI_DISABLE_IRQS(); ACPI_FLUSH_CPU_CACHE(); - if (state == ACPI_STATE_S4 && sc->acpi_s4bios) - status = AcpiEnterSleepStateS4Bios(); + status = AcpiEnterSleepStateS4bios(); else status = AcpiEnterSleepState(state); + ACPI_ENABLE_IRQS(); if (status != AE_OK) { device_printf(sc->acpi_dev, |