ACPI_BIOS_ERROR    |    Fix Error Code 0x000000A5    |    Fix Windows Registry Errors


STOP 0x000000A5 : ACPI_BIOS_ERROR

STOP Errors are usually the result of a hardware malfunction or device driver issue. It is also possible to receive a Blue Screen Error due to bad system memory, malfunctioning power supply, components overheating, or hardware overclocked beyond its specification. In older versions of the Windows OS you may also receive Blue Screen Errors due to incompatible DLL files.

Since the only option when receiving a Blue Screen Error is to reboot, any unsaved data is lost. With that in mind, it is very important to eliminate these errors to protect your data.

Basic Troubleshooting

Troubleshooting STOP Errors can be a difficult and time consuming process. Try these basic steps to fix your own Blue Scree Error. We hope it will help you avoid an expensive service call and provide a rewarding experience of solving the problem on your own.

Advanced Troubleshooting

The following details are for advanced users. These are provided for your convenience and may help those with advanced knowledge discover the root cause of their STOP Error.


Stop 0xA5: ACPI_BIOS_ERROR

The ACPI_BIOS_ERROR stop error code has a value of 0x000000A5. This stop error code indicates that the Advanced Configuration and Power Interface (ACPI) BIOS of the computer is not fully compliant with the ACPI specification.

Parameters

Four stop error code parameters appear on the blue screen. Parameter 1 indicates the kind of the incompatibility. The meaning of the other parameters depends on the value of Parameter 1.

If the BIOS incompatibility is related to Plug and Play (PnP) or power management, the following parameters are used.

Parameter 1Parameter 2Parameter 3Parameter 4Cause
0x01ACPI's deviceExtension ACPI's ResourceList 0: No resource list is found

1: No IRQ resource is found in list

ACPI cannot find the System Control Interrupt (SCI) vector in the resources that are handed to it when ACPI is started.
0x02(See the table later on this page)
0x03The ACPI object that was being run The return value from the interpreter The name of the control method (in ULONG format) ACPI tried to run a control method while creating device extensions to represent the ACPI namespace, but this control method failed.
0x04The ACPI extension that _PRW belongs toA pointer to the method The DataType returned (see Amli.h) ACPI evaluated a _PRW and expected to find an integer as a package element.
0x05The ACPI extension that _PRW belongs toAointer to the _PRW The number of elements in the _PRW ACPI evaluated a _PRW, and the package that came back failed to contain at least two elements. The ACPI specification requires that two elements always be present in a _PRW.
0x06The ACPI extension that _PRx belongs toA pointer to the _PRx A pointer to the name of the object to look for ACPI tried to find a named object, but it could not find the object.
0x07The ACPI extension that the method belongs toA pointer to the method The DataType returned (see Amli.h) ACPI evaluated a method and expected to receive a buffer in return. However, the method returned some other data type.
0x08The ACPI extension that the method belongs toA pointer to the method The DataType returned (see Amli.h) ACPI evaluated a method and expected to receive an integer in return. However, the method returned some other data type.
0x09The ACPI extension that the method belongs toA pointer to the method The DataType returned (see Amli.h) ACPI evaluated a method and expected to receive a package in return. However, the method returned some other data type.
0x0AThe ACPI extension that the method belongs toA pointer to the method The DataType returned (see Amli.h) ACPI evaluated a method and expected to receive a string in return. However, the method returned some other data type.
0x0BThe ACPI extension that _EJD belongs toThe status that the interpreter returnsThe name of the object that ACPI is trying to find ACPI cannot find the object that an _EJD string references.
0x0CThe ACPI extension that ACPI found a dock device forA pointer to the _EJD method 0: BIOS does not claim system is dockage

1: Duplicate device extensions for dock device

ACPI provides faulty or insufficient information for dock support.
0x0DThe ACPI extension that ACPI needs the object for The (ULONG) name of the method that ACPI looked for 0: Base case

1: Conflict

ACPI could not find a required method or object in the namespace This stop error code code is used if there is no _HID or _ADR present.
0x0EThe NS PowerResource that ACPI needs the object for The (ULONG) name of the method that ACPI looked for 0: Base case ACPI could not find a required method or object in the namespace for a power resource (or entity other than a "device"). This stop error code code is used if there is no _ON, _OFF, or _STA present for a power resource.
0x0FThe current buffer that ACPI was parsing The buffer's tag The specified length of the buffer ACPI could not parse the resource descriptor.
0x10(See the table later on this page)
0x11(See the table later on this page)
0x14The current buffer that ACPI was parsing The buffer's tag A pointer to a variable that contains the ULONGLONG length of the buffer ACPI could not parse the resource descriptor. The length exceeds MAXULONG.
0x15The ACPI Machine Language (AML) context 1: Failed to load table

2: The Parameter Path String Object was not found

3: Failed to insert Parameter Data into the ParameterPath String Object

4: Out of system memory

The NT status code ACPI had a fatal error when attempting to load a table.
0x16A pointer to the parent NSOBJA pointer to the illegal child ACPI namespace objectReserved ACPI had a fatal error when processing an xSDT. An object was declared as a child of a parent that cannot have children.

If an interrupt routing failure or incompatibility has occurred, the following parameters are used.

Parameter 1Parameter 2Parameter 3Parameter 4Cause
0x2001InterruptModel (integer) The return value from the interpreter A pointer to the PIC control method ACPI tried to evaluate the PIC control method but failed.
0x10001A pointer to the device object A pointer to the parent of the device object A pointer to the _PRT object

(See the following Comments section)

ACPI tried to do interrupt routing, but failed.
0x10002A pointer to the device object A pointer to the string name that ACPI was looking for but could not find A pointer to the _PRT object

(See the following Comments section)

ACPI could not find the link node referenced in a _PRT.
0x10003A pointer to the device object The device ID or function number.

This DWORD is encoded as follows: bits 5:0 are the PCI device number, and bits 8:6 are the PCI function number

A pointer to the _PRT object

(See the following Comments section)

ACPI could not find a mapping in the _PRT package for a device.
0x10005A pointer to the _PRT object

(See the following Comments section)

A pointer to the current _PRT element.

(This pointer is an index into the _PRT.)

The device ID or function number.

This DWORD is encoded as follows: bits 15:0 are the PCI function number, and bits 31:16 are the PCI device number

ACPI found an entry in the _PRT that the function ID is not all F's for.

(The generic format for a _PRT entry is that the device number is specified, but the function number is not.)

0x10006A pointer to the link node.

(This device is missing the _DIS method.)

0 0 ACPI found a link node, but it cannot disable the node.

(Link nodes must be disabled to allow for reprogramming.)

0x10007The vector that could not be found 0 0 The _PRT contained a reference to a vector that is not described in the I/O APIC entry's MAPIC table.
0x10008The invalid interrupt level. 0 0 The ACPI SCI interrupt level is invalid.



0x100090 0 0 The Fixed ACPI Description Table (FADT) could not be located.
0x1000A0 0 0 The Root System Description Pointer (RSDP) or Extended System Description Table (XSDT) could not be located



0x1000BThe ACPI table signatureA pointer to the ACPI table 0 The length of the ACPI table is not consistent with the table revision.
0x20000The I/O port in the Fixed Table00The PM_TMR_BLK entry in the Fixed ACPI Description Table doesn't point to a working ACPI timer block.

If a miscellaneous failure or incompatibility has occurred, the following parameters are used.

Parameter 1Parameter 2Parameter 3Parameter 4Cause
0x20000The I/O port in the Fixed Table 0 0 The PM_TMR_BLK entry in the Fixed ACPI Description Table does not point to a working ACPI timer block.

If Parameter 1 equals 0x02, the ACPI BIOS could not process the resource list for the PCI root buses. In this case, Parameter 3 specifies the exact problem, and the remaining parameters have the following definitions.

Parameter 2Parameter 3Parameter 4Cause
The ACPI extension for the PCI bus0x0A pointer to the QUERY_RESOURCES IRP ACPI cannot convert the BIOS' resource list into the proper format. This probably represents an error in the BIOS' list encoding procedure.
The ACPI extension for the PCI bus0x1A pointer to the QUERY_RESOURCE_REQUIREMENTS IRPACPI cannot convert the BIOS' resource list into the proper format. This probably represents an error in the BIOS' list encoding procedure.
The ACPI extension for the PCI bus0x20 ACPI found an empty resource list.
The ACPI extension for the PCI bus0x3A pointer to the PNP CRS descriptor ACPI could not find the current bus number in the CRS.
The ACPI extension for the PCI busA pointer to the resource list for PCI A pointer to the E820 memory table The list of resources that PCI claims to decode overlaps with the list of memory regions that the E820 BIOS interface reports. (This kind of conflict is never permitted.)

If Parameter 1 equals 0x10, the ACPI BIOS could not determine the system-to-device-state mapping correctly. In this situation, Parameter 3 specifies the exact problem, and the remaining parameters have the following definitions.

Parameter 2Parameter 3Parameter 4Cause
The ACPI extension whose mapping is needed0x0The DEVICE_POWER_STATE (this is "x+1") _PRx was mapped back to a non-supported S-state.
The ACPI extension whose mapping is needed0x1The SYSTEM_POWER_STATE that cannot be mapped ACPI cannot find a D-state to associate with the S-state.
The ACPI extension whose mapping is needed0x2The SYSTEM_POWER_STATE that cannot be mapped The device claims to be able to wake the system when the system is in this S-state, but the system does not actually support this S-state.

If Parameter 1 equals 0x11, the system could not enter ACPI mode. In this situation, Parameter 2 specifies the exact problem, and the remaining parameters have the following definitions.

Parameter 2Parameter 3Parameter 4Cause
0x00 0 The system could not initialize the AML interpreter.
0x10 0 The system could not find RSDT.
0x20 0 The system could not allocate critical driver structures.
0x30 0 The system could not load RSDT.
0x40 0 The system could not load DDBs.
0x50 0 The system cannot connect the Interrupt vector.
0x60 0 SCI_EN never becomes set in PM1 Control Register.
0x7A pointer to the table that had a bad checksumCreator revision The table checksum is incorrect.
0x8A pointer to the table that ACPI failed to load Creator revision ACPI failed to load DDB.
0x9FADT version 0 Unsupported firmware version.
0xA0 0 The system could not find MADT.
0xB0 0 The system could not find any valid Local SAPIC structures in the MADT.

Cause

The value of Parameter 1 indicates the error.

Resolving the Problem

If you are debugging this error, use the !analyze -v extension command. This extension displays all the relevant data (device extensions, nsobjects, or whatever is appropriate to the specific error).

If you are not performing debugging, this error indicates that you have to obtain a new BIOS. Contact your vendor or visit the internet to get a new BIOS.

If you cannot obtain an updated BIOS, or the latest BIOS is still not ACPI compliant, you can turn off ACPI mode during text-mode setup. To turn off ACPI mode, press the F7 key when you are prompted to install storage drivers. The system does not notify you that the F7 key was pressed, but it silently disables ACPI and enables you to continue your installation.

Comments

A PCI routing table (_PRT) is the ACPI BIOS object that specifies how all the PCI devices are connected to the interrupt controllers. A computer with multiple PCI buses might have multiple _PRTs.

You can display a _PRT in the debugger by using the !acpikd.nsobj extension command together with the address of the _PRT object as its argument.

Helpful Tools

The following products are free to try. We have found them to be of the highest quality and value. They have been extremely useful in our own pc troubleshooting and maintainance and we highly recommend trying them out for yourself.


Anti-Malware Pro

With a lightning fast free scan and the largest authentic spyware detection database we have seen, Anti-Malware Pro finds and removes threats to your PC stability and security. Download Anti-Malware Pro


DriverFinder

DriverFinder will scan your system for driver and software updates. Its easy to use interface makes keeping your drivers updated quick and simple. They will even send you an email notification when new driver updates are available for your system! It doesn't get any more convenient than this. Download DriverFinder





Browse STOP Error Codes:





Is a STOP error code missing?

Help us to make errorDecoder.com the best resource we possibly can by submitting you very own STOP error code details. If you have detailed information on any STOP error code please let us know by visiting the following link.

Submit Error Details Form

STOP 0x000000A5    |    ACPI_BIOS_ERROR    |    Fix Windows Registry Errors