diff options
Diffstat (limited to 'sys/arch/i386')
-rw-r--r-- | sys/arch/i386/i386/acpi_wakecode.S | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/arch/i386/i386/acpi_wakecode.S b/sys/arch/i386/i386/acpi_wakecode.S index 78d79124fec..54050a31d90 100644 --- a/sys/arch/i386/i386/acpi_wakecode.S +++ b/sys/arch/i386/i386/acpi_wakecode.S @@ -83,6 +83,7 @@ .global _C_LABEL(acpi_real_mode_resume) .global _C_LABEL(acpi_protected_mode_resume) .global _C_LABEL(acpi_resume_end) + .global _C_LABEL(do_real_mode_post) _C_LABEL(acpi_real_mode_resume): nop cli @@ -127,7 +128,8 @@ _C_LABEL(acpi_real_mode_resume): * laptops), we might not restore the proper VGA mode * on resume. Caveat emptor. */ - jmp nobiosreset /* XXX make this a tunable */ + cmpl $0, do_real_mode_post_off + jz nobiosreset lcall $0xc000,$3 /* @@ -372,6 +374,11 @@ _ACPI_TRMP_OFFSET(clean_idt) .word 0 .align 4 +_C_LABEL(do_real_mode_post): +_ACPI_TRMP_OFFSET(do_real_mode_post_off) + .long 0 + + .align 4 _ACPI_TRMP_LABEL(acpi_saved_ebx) .long 0 _ACPI_TRMP_LABEL(acpi_saved_ecx) |