How Windows 2000 Determines ACPI Compatibility

ID: Q216573


The information in this article applies to:
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows 2000 Server


SUMMARY

This article describes the process used by Windows 2000 to enable and install Advanced Configuration and Power Interface (ACPI) functionality.


MORE INFORMATION

The Txtsetup.sif File

The Txtsetup.sif file contains information used for device detection and installation during text-mode Setup. If an entry is not found for a device in this file, the device is not installed during the text-mode Setup portion of a Windows 2000 installation.

There are three sections in the Txtsetup.sif file to provide for ACPI detection and installation:
  • [ACPIOptions]
  • [GoodACPIBios]

ACPI Configuration in the BIOS

An ACPI system consists of a series of ten tables. These ten tables define which devices are present on the system and what their capabilities are as they relate to configuration and power management. These tables are built by the system BIOS at boot. When the system boots, it looks for specific entries contained in two of these tables (the Fixed ACPI Description table [FACP] and the Root System Description table [RSDT])to determine if the system is ACPI compliant. This information is extracted from these tables in the form of an OEM ID, OEM TABLE ID, OEM REVISION, and CREATOR REVISION. If these tables are not present or the information contained in the descriptors above is invalid, the system is assumed to be non-ACPI and the legacy hardware abstraction layer (HAL) is installed.

A sample of the Fixed ACPI Description table might be:

OEM ID = "COMPAQ"
OEM Table ID = "FACPTBL"
OEM Revision = "432"
Creator Revision = "1" 
A sample of the Root System Description table for this entry would be:

OEM Table ID = "CPQB01B" 

In addition to this information, the date of the BIOS is also read.

Determining the ACPI Configuration

The information found in these tables is compared to the entries found in the Txtsetup.sif file. The following assumptions are made and actions performed based on this information:

If the system BIOS is on the bad BIOS list, the ACPI HAL is not installed. If the BIOS is not on the bad BIOS list, and the date of the BIOS is later than 1/1/99, it is assumed to be a good BIOS and the ACPI HAL is applied. If the date is earlier than 1/1/99, the table information is checked against the good BIOS list. If the BIOS is present, the ACPI HAL is installed.

A BIOS appears on the bad BIOS list because it is known to cause system instability if the ACPI HAL is used. This instability can range in severity from hardware not acting correctly to system hangs and data loss. For this reason, it is never a good idea to override the assumptions made by this list. This also applies to systems that are not detected as ACPI compliant. If the table header information is inaccurate, it can be assumed that the device configuration information contained in these tables is equally questionable. Should you encounter any of the instabilities associated with overriding the default ACPI settings, Microsoft cannot assist you in any manner short of a complete reinstallation of the operating system. An upgrade installation cannot fix the damage done by a bad or incomplete ACPI BIOS. Nonetheless, should you need to override these settings, you can do so using the following information:

Two entries named ACPIEnable and ACPIBiosDate appear in the [ACPIOptions] section. The ACPIBiosDate entry supplies the date after which a BIOS is considered good. The default setting for this entry is 1/1/1999. The ACPIBiosDate entry is of little use in forcing an ACPI installation. The three possible values for the ACPIEnable entry determine the ACPI detection and installation behavior:
  • 0: ACPI is disabled at installation regardless of the system BIOS


  • 1: ACPI is enabled at installation if an ACPI BIOS is present


  • 2: ACPI is enabled based on the GoodACPIBios list and ACPIBiosDate


The default setting is 2.

To override the default and force an ACPI installation, edit the Txtsetup.sif file located on Setup disk 1 and change the ACPIEnable value to 1. Save the file and then restart the installation.

NOTE: ACPI functionality is relatively new and functions are constantly being added by BIOS and system manufacturers. If functionality is missing that you believe should exist, or you are experiencing unusual behavior with a BIOS dated later than 1/1/1999 (or a BIOS listed on the good BIOS list), verify with the manufacturer of your system that you have the most current BIOS revision installed.

ACPI does require the presence of some new hardware (such as an SMBus or I2c -compatible bus and other items), the absence of which can prevent the system from being ACPI capable. If you have any question about why your system does not yet have an update to provide this functionality, consult with the manufacturer of your specific system or motherboard.

Additional query words:

Keywords : kbenv kbhw
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbinfo


Last Reviewed: January 2, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.