Windows XP (32 and 64 bit) crashes if 64-bit PCI hole is present. Use _OSI ACPI method to blacklist it and hide 64-bit PCI hole.
_OSI strings reported by XP are taken from here: http://msdn.microsoft.com/library/windows/hardware/gg463275 Signed-off-by: Igor Mammedov <imamm...@redhat.com> --- src/acpi-dsdt.dsl | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl index 158f6b4..7b55636 100644 --- a/src/acpi-dsdt.dsl +++ b/src/acpi-dsdt.dsl @@ -33,6 +33,31 @@ DefinitionBlock ( /**************************************************************** + * OS detection + ****************************************************************/ + + Scope(\_SB) { + External(\P1V, IntObj) + + Method(_INI) { + If (CondRefOf (\_OSI, Local0)) { + /* disable 64-bit PCI window for Windows XP and its variants */ + If (\_OSI ("Windows 2001")) { + Store (Zero, P1V) + } + + If (\_OSI ("Windows 2001 SP1")) { + Store (Zero, P1V) + } + + If (\_OSI ("Windows 2001 SP2")) { + Store (Zero, P1V) + } + } + } + } + +/**************************************************************** * PCI Bus definition ****************************************************************/ -- 1.7.1 _______________________________________________ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios