Difference between revisions of "ACPI"

From coreboot
Jump to navigation Jump to search
(updated SVN browser paths that were broken after the v2->v4 version change)
(→‎Windows Errors: Note Windows XP setup error and its remedy, noted by Scott Duplichan)
Line 248: Line 248:
The documentation of windbg has more detailed information about STOP 0xa5 than the MSDN article.
The documentation of windbg has more detailed information about STOP 0xa5 than the MSDN article.
STOP 0xa5 can be debugged by using checked builds of ntoskrnl and hal.dll and a second machine connected with a null-modem cable and windbg as kernel debugger.
STOP 0xa5 can be debugged by using checked builds of ntoskrnl and hal.dll and a second machine connected with a null-modem cable and windbg as kernel debugger.
=== "unexpected error" in Windows XP / Server 2003 setup ===
(from http://www.coreboot.org/pipermail/coreboot/2011-May/065179.html)
Windows XP or Server 2003 setup might fail with an error message such as:
    "An unexpected error (805262864) occurred at line 1768 of d:\xpclient\base\boot\setup\arcdisp.c"
The value 805262864 varies, and is the physical address, in decimal, of one of the ACPI tables.
The error message is displayed when a 1024 dword page table array used by setupldr runs out of space.
This table is used for mapping various physical addresses, such as those of ACPI tables (a separate table identity maps the lower 16MB used by setupldr code and data). Setupldr only looks at ACPI tables (FACP) to determine make and model of the system. The make and model of the system is needed when setupldr scans the good/bad bios lists contained in txtsetup.sif. The good/bad bios lists are used to bypass installation of the ACPI enabled kernel on certain systems known to have ACPI problems. The code loop that scans the lists creates a new mapping each time it reads an ACPI table, and never frees mappings. The code uses FACP OEM ID to determine the system model. The code sequentially reads tables listed in the RSDT array until the FACP is found. Each read consumes one page table entry. If more that 4 tables precede the FACP in the RSDT array, the 1024 entry page table array will run out of space before the good/bad bios list processing completes.
BIOS can work around this Windows XP/Server 2003 limitation by placing the FACP early in the RSDT array.


=== Other errors ===
=== Other errors ===
* Quoting [http://support.microsoft.com/?scid=kb%3Ben-us%3B935806&x=14&y=18 MSDN]: A "Stop: 0x0000007E" error message or a "Stop: 0x0000008E" error message typically means that a kernel mode component, such as a driver, encountered an error that could not be handled by the built-in Windows error handler.
* Quoting [http://support.microsoft.com/?scid=kb%3Ben-us%3B935806&x=14&y=18 MSDN]: A "Stop: 0x0000007E" error message or a "Stop: 0x0000008E" error message typically means that a kernel mode component, such as a driver, encountered an error that could not be handled by the built-in Windows error handler.
== Linux Errors ==
== Linux Errors ==
=== ACPI 2.0/3.0 without XSDT ===
=== ACPI 2.0/3.0 without XSDT ===

Revision as of 06:09, 20 May 2011