diff options
author | 2009-06-06 00:23:38 +0000 | |
---|---|---|
committer | 2009-06-06 00:23:38 +0000 | |
commit | ff02ad250dae7eed2a58780352fd03147f7f9c15 (patch) | |
tree | f158124b5a203e013e504fabf6c27c38e7d41dda /sys | |
parent | Fix some lapic, interrupt, and clock issues on i386 ACPI S3 resume. (diff) | |
download | wireguard-openbsd-ff02ad250dae7eed2a58780352fd03147f7f9c15.tar.xz wireguard-openbsd-ff02ad250dae7eed2a58780352fd03147f7f9c15.zip |
Matching fix for amd64. This also removes a spurious disable_intr() call
that wasn't needed.
ok pirofti@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arch/amd64/amd64/acpi_machdep.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/sys/arch/amd64/amd64/acpi_machdep.c b/sys/arch/amd64/amd64/acpi_machdep.c index 83edd9e0ed7..8bab06fc5c2 100644 --- a/sys/arch/amd64/amd64/acpi_machdep.c +++ b/sys/arch/amd64/amd64/acpi_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: acpi_machdep.c,v 1.20 2009/06/04 23:32:06 mlarkin Exp $ */ +/* $OpenBSD: acpi_machdep.c,v 1.21 2009/06/06 00:23:38 mlarkin Exp $ */ /* * Copyright (c) 2005 Thorsten Lockert <tholo@sigmasoft.com> * @@ -45,9 +45,8 @@ extern u_char acpi_real_mode_resume[], acpi_resume_end[]; extern u_int32_t acpi_pdirpa; extern paddr_t tramp_pdirpa; -int acpi_savecpu(void); -void ioapic_enable(void); -void lapic_enable(void); +extern int acpi_savecpu(void); +extern void ioapic_enable(void); #define ACPI_BIOS_RSDP_WINDOW_BASE 0xe0000 #define ACPI_BIOS_RSDP_WINDOW_SIZE 0x20000 @@ -224,8 +223,6 @@ acpi_sleep_machdep(struct acpi_softc *sc, int state) if (sc->sc_facs->version == 1) sc->sc_facs->x_wakeup_vector = 0; - disable_intr(); - /* Copy the current cpu registers into a safe place for resume. */ if (acpi_savecpu()) { wbinvd(); @@ -244,13 +241,13 @@ acpi_sleep_machdep(struct acpi_softc *sc, int state) #if NLAPIC > 0 lapic_enable(); - lapic_calibrate_timer(&cpu_info_primary); + lapic_initclocks(); #endif #if NIOAPIC > 0 ioapic_enable(); #endif initrtclock(); - enable_intr(); + inittodr(time_second); #endif /* ACPI_SLEEP_ENABLED */ return 0; } |