summaryrefslogtreecommitdiffstats
path: root/sys/i386/acpica
diff options
context:
space:
mode:
authoriwasaki <iwasaki@FreeBSD.org>2003-10-29 03:30:45 +0000
committeriwasaki <iwasaki@FreeBSD.org>2003-10-29 03:30:45 +0000
commit143f8d89ab68c82f97002b3b8a7e770a59f6b3da (patch)
treece28408a83ad918b37be08260160014aca07748a /sys/i386/acpica
parent8bfb1786d591a49256818c008e9a41c87a9f9125 (diff)
downloadFreeBSD-src-143f8d89ab68c82f97002b3b8a7e770a59f6b3da.zip
FreeBSD-src-143f8d89ab68c82f97002b3b8a7e770a59f6b3da.tar.gz
Add kernel option ACPI_NO_RESET_VIDEO as workaround for problems
(e.g. LCD white-out after resume) on some machine cased by re-initialize video BIOS code in acpi_wakecode.
Diffstat (limited to 'sys/i386/acpica')
-rw-r--r--sys/i386/acpica/Makefile4
-rw-r--r--sys/i386/acpica/acpi_wakecode.S2
2 files changed, 6 insertions, 0 deletions
diff --git a/sys/i386/acpica/Makefile b/sys/i386/acpica/Makefile
index 59932f7..c22071f 100644
--- a/sys/i386/acpica/Makefile
+++ b/sys/i386/acpica/Makefile
@@ -11,6 +11,10 @@ CLEANFILES= acpi_wakecode.h acpi_wakecode.bin acpi_wakecode.o
.endif
CFLAGS+= -I.
+.ifdef ACPI_NO_RESET_VIDEO
+CFLAGS+= -DACPI_NO_RESET_VIDEO
+.endif
+
all: acpi_wakecode.h
acpi_wakecode.o: acpi_wakecode.S
diff --git a/sys/i386/acpica/acpi_wakecode.S b/sys/i386/acpica/acpi_wakecode.S
index 3d40b31..a67f4ad 100644
--- a/sys/i386/acpica/acpi_wakecode.S
+++ b/sys/i386/acpica/acpi_wakecode.S
@@ -43,6 +43,7 @@ wakeup_16:
movw %ax,%ds
movw %ax,%ss
+#ifndef ACPI_NO_RESET_VIDEO
/*
* Re-initialize video BIOS. Restore DS and SS from CS in
* case the BIOS modified them.
@@ -51,6 +52,7 @@ wakeup_16:
movw %cs, %ax
movw %ax, %ds
movw %ax, %ss
+#endif
/* Load GDT for real mode */
lgdt physical_gdt
OpenPOWER on IntegriCloud