Partager via


Vérification de bogue 0xA5 : ACPI_BIOS_ERROR

La vérification de bogue ACPI_BIOS_ERROR a une valeur 0x000000A5. Cette vérification de bogue indique que le BIOS ACPI (Advanced Configuration and Power Interface) de l’ordinateur n’est pas entièrement conforme à la spécification ACPI.

Important

Cet article s’adresse aux programmeurs. Si vous êtes un client et que vous avez reçu ce code d’erreur d’écran bleu en utilisant votre ordinateur, consultez Résoudre les erreurs d’écran bleu.

Paramètres ACPI_BIOS_ERROR

Le paramètre 1 indique le type de l’incompatibilité. La signification des autres paramètres dépend de la valeur du paramètre 1.

Si l’incompatibilité du BIOS est liée à Plug-and-Play (PnP) ou à la gestion de l’alimentation, on utilise les paramètres suivants.

Paramètre 1 Paramètre 2 Paramètre 3 Paramètre 4 Cause

0x01

deviceExtension ACPI

ResourceList ACPI

0 : aucune liste de ressources trouvée

1 : Aucune ressource IRQ n’est trouvée dans la liste

L’ACPI ne peut pas trouver le vecteur SCI (Interruption de contrôle du système) dans les ressources qui lui sont transmises lors du démarrage de l’ACPI.

0x02

(Voir le tableau plus loin dans cette page)

0x03

Objet ACPI en cours d’exécution

La valeur renvoyée du module d’interprétation

Nom de la méthode de contrôle (au format ULONG)

L’ACPI a essayé d’exécuter une méthode de contrôle lors de la création d’extensions d’appareil pour représenter l’espace de noms ACPI, mais celle-ci a échoué.

0x04

Extension ACPI à laquelle appartient _PRW

Pointeur vers la méthode

DataType renvoyé (voir Amli.h)

L’ACPI a évalué un _PRW et s’attendait à trouver un entier en tant qu’élément de package.

0x05

Extension ACPI à laquelle appartient _PRW

Pointeur vers le _PRW.

Nombre d’éléments dans le _PRW.

L’ACPI a évalué un _PRW, et le package qui est revenu n’a pas pu contenir au moins deux éléments. La spécification ACPI exige que deux éléments soient toujours présents dans un _PRW.

0x06

Extension ACPI à laquelle appartient _PRx

Pointeur vers le _PRx.

Pointeur vers le nom de l’objet à rechercher

L’ACPI a essayé de trouver un objet nommé, mais il n’a pas pu.

0x07

Extension ACPI à laquelle appartient la méthode

Pointeur vers la méthode

DataType renvoyé (voir Amli.h)

L’ACPI a évalué une méthode et s’attendait à recevoir un tampon en retour. Toutefois, la méthode a retourné un autre type de données.

0x08

Extension ACPI à laquelle appartient la méthode

Pointeur vers la méthode

DataType renvoyé (voir Amli.h)

L’ACPI a évalué une méthode et s’attendait à recevoir un entier en retour. Toutefois, la méthode a retourné un autre type de données.

0x09

Extension ACPI à laquelle appartient la méthode

Pointeur vers la méthode

DataType renvoyé (voir Amli.h)

L’ACPI a évalué une méthode et s’attendait à recevoir un package en retour. Toutefois, la méthode a retourné un autre type de données.

0x0A

Extension ACPI à laquelle appartient la méthode

Pointeur vers la méthode

DataType renvoyé (voir Amli.h)

L’ACPI a évalué une méthode et s’attendait à recevoir une chaîne en retour. Toutefois, la méthode a retourné un autre type de données.

0x0B

Extension ACPI à laquelle appartient _EJD

État retourné par l’interpréteur

Nom de l’objet que l’ACPI tente de trouver

L’ACPI ne peut pas trouver l’objet référencé par une chaîne _EJD.

0x0C

Extension ACPI pour laquelle l’ACPI a trouvé une station d’accueil

Pointeur vers la méthode _EJD

0 : Le BIOS n’indique pas que le système est connecté à la station d’accueil

1 : extensions de l’appareil en double pour la station d’accueil

L’ACPI fournit des informations défectueuses ou insuffisantes pour la prise en charge de la station d’accueil.

0x0D

Extension ACPI pour laquelle l’ACPI a besoin de l’objet

Nom (ULONG) de la méthode recherchée par l’ACPI

0 : cas de base

1 : conflit

L’ACPI n’a pas trouvé de méthode ou d’objet obligatoire dans l’espace de noms Ce code de vérification de bogue est utilisé s’il n’existe aucun _HID ou _ADR.

0x0E

PowerResource NS pour laquelle l’ACPI a besoin de l’objet

Nom (ULONG) de la méthode recherchée par l’ACPI

0 : cas de base

L’ACPI n’a pas pu trouver une méthode ou un objet requis dans l’espace de noms pour une ressource d’alimentation (ou une entité autre qu’un « appareil »). Ce code de vérification de bogue est utilisé s’il n’existe aucun _ON, _OFF ou _STA pour une ressource d’alimentation.

0x0F

Mémoire tampon actuelle qui était analysée par l’ACPI

Balise de la mémoire tampon

Longueur spécifiée de la mémoire tampon

L’ACPI n’a pas pu analyser le descripteur de ressource.

0x10

(Voir le tableau plus loin dans cette page)

0x11

(Voir le tableau plus loin dans cette page)

0x14

Mémoire tampon actuelle qui était analysée par l’ACPI

Balise de la mémoire tampon

Pointeur vers une variable qui contient la longueur ULONGLONG de la mémoire tampon

L’ACPI n’a pas pu analyser le descripteur de ressource. La longueur dépasse MAXULONG.

0x15

Contexte AML (machine langage ACPI)

1 : Échec du chargement de table

2 : le paramètre de l’objet de chaîne du chemin d’accès n’a pas été trouvé

3 : échec de l’insertion des données de paramètre dans l’objet de chaîne ParameterPath

4 : mémoire système insuffisante

Code d’état NT.

L’ACPI a rencontré une erreur irrécupérable lors de la tentative de chargement d’une table.

0x16

Pointeur vers le NSOBJ parent

Pointeur vers l’objet d’espace de noms ACPI enfant illégal

Reserved

L’ACPI a rencontré une erreur irrécupérable lors du traitement d’un xSDT. Un objet a été déclaré en tant qu’enfant d’un parent qui ne peut pas avoir d’enfants.

Les paramètres suivants sont utilisés en cas d’incompatibilité ou d’échec de routage des interruptions.

Paramètre 1 Paramètre 2 Paramètre 3 Paramètre 4 Cause

0x2001

InterruptModel (entier)

La valeur renvoyée du module d’interprétation

Pointeur vers la méthode de contrôle PIC.

L’ACPI a essayé d’évaluer la méthode de contrôle PIC mais a échoué.

0x10001

Pointeur vers l’objet appareil

Pointeur vers le parent de l’objet appareil

Pointeur vers l’objet _PRT

(Consultez la section « Commentaires » suivante)

L’ACPI a essayé d’effectuer le routage des interruptions, mais a échoué.

0x10002

Pointeur vers l’objet appareil

Pointeur vers le nom de chaîne que l’ACPI recherchait, mais ne pouvait pas trouver

Pointeur vers l’objet _PRT

(Consultez la section « Commentaires » suivante)

L’ACPI n’a pas pu trouver le nœud de liaison référencé dans un _PRT.

0x10003

Pointeur vers l’objet appareil

ID d’appareil ou numéro de fonction.

Ce DWORD est encodé comme suit : les bits 5 :0 sont le numéro d’appareil PCI, et les bits 8:6 sont le numéro de fonction PCI

Pointeur vers l’objet _PRT

(Consultez la section « Commentaires » suivante)

L’ACPI n’a pas pu trouver de mappage dans le package _PRT pour un appareil.

0x10005

Pointeur vers l’objet _PRT

(Consultez la section « Commentaires » suivante)

Pointeur vers l’élément _PRT actuel.

(Ce pointeur est un index dans le _PRT.)

ID d’appareil ou numéro de fonction.

Ce DWORD est encodé comme suit : les bits 15 :0 sont le numéro de fonction PCI, et les bits 31:16 sont le numéro d’appareil PCI

L’ACPI a trouvé une entrée dans le _PRT dont l’ID de fonction ne contient pas tous les F.

(De manière générale, le format d’une entrée _PRT est le suivant : le numéro de l’appareil est spécifié, mais le numéro de la fonction ne l’est pas).

0x10006

Pointeur vers le nœud de liaison.

(Cet appareil ne dispose pas de la méthode _DIS).

0

0

L’ACPI a trouvé un nœud de liaison, mais il ne peut pas désactiver le nœud.

(Les nœuds de liaison doivent être désactivés pour autoriser la reprogrammation).

0x10007

Vecteur introuvable

0

0

Le _PRT contenait une référence à un vecteur qui n’est pas décrit dans la table MAPIC de l’entrée E/S APIC.

0x10008

Niveau d’interruption non valide.

0

0

Le niveau d’interruption ACPI SCI n’est pas valide.

0x10009

0

0

0

La table de description ACPI fixe (FADT) n’a pas pu être localisée.

0x1000A

0

0

0

Le pointeur de description du système racine (RSDP) ou la table de description du système étendu (XSDT) n’a pas pu être localisé.

0x1000B

Signature de la table ACPI

Pointeur vers la table ACPI

0

La longueur de la table ACPI n’est pas cohérente avec la révision de la table.

0x1000C

ID de révision

Index de fonction

0

Méthode _DSM pour les interruptions a renvoyé des données incorrectes.

0x1000D

Extension ACPI pour l’appareil

Valeur 0 : _PRW spécifié sans interruptions compatibles avec le réveil et au moins une interruption GPIO Valeur 1 : étant donné qu’il existe des interruptions compatibles avec le réveil, le _PRW doit spécifier une valeur GpeInfo de 0xffffffff

0

Un appareil a utilisé des interruptions GPE et GPIO, ce qui n’est pas pris en charge.

0x1000E

Statut renvoyé par la fonction de validation.

Pointeur vers le chemin d’espace de noms ACPI UNICODE_STRING.

Pointeur vers la liste des ressources comparé à SDEV.

Les ressources SDEV d’un appareil sécurisé ne correspondent pas à son entrée _CRS ou _PRS correspondante.

En cas de défaillance ou d’incompatibilité quelconque, on utilise les paramètres suivants.

Paramètre 1 Paramètre 2 Paramètre 3 Paramètre 4 Cause

0x20000

Port E/S dans la table fixe

0

0

L’entrée PM_TMR_BLK dans la table de description ACPI fixe ne pointe pas vers un bloc de minuteur ACPI opérationnel.

Ce tableau décrit les problèmes d’utilisation de la mémoire dans lesquels les paramètres suivants sont utilisés.

Paramètre 1 Paramètre 2 Paramètre 3 Paramètre 4 Cause

0x1000

Partie élevée de l’adresse physique de la région de mémoire.

Partie basse de l’adresse physique de la région de mémoire.

Longueur de la mémoire mappée.

L’ACPI a connu une erreur irrécupérable lors du traitement d’une région d’opération de mémoire. La région d’opération de mémoire a essayé de mapper la mémoire allouée pour l’utilisation du système d’exploitation.

Si le paramètre 1 est égal à 0x02, le BIOS ACPI n’a pas pu traiter la liste des ressources pour les bus racines PCI. Dans ce cas, le paramètre 3 spécifie le problème exact et les paramètres restants ont les définitions suivantes.

Paramètre 2 Paramètre 3 Paramètre 4 Cause

Extension ACPI pour le bus PCI

0x0

Pointeur vers l’IRP QUERY_RESOURCES

L’ACPI ne peut pas convertir la liste des ressources du BIOS dans le format approprié. Il s’agit probablement d’une erreur dans la procédure d’encodage de liste du BIOS.

Extension ACPI pour le bus PCI

0x1

Pointeur vers l’IRP QUERY_RESOURCE_REQUIREMENTS

L’ACPI ne peut pas convertir la liste des ressources du BIOS dans le format approprié. Il s’agit probablement d’une erreur dans la procédure d’encodage de liste du BIOS.

Extension ACPI pour le bus PCI

0x2

0

L’ACPI a trouvé une liste de ressources vide.

Extension ACPI pour le bus PCI

0x3

Pointeur vers le descripteur CRS PNP

L’ACPI n’a pas trouvé le numéro de bus actuel dans le CRS.

Extension ACPI pour le bus PCI

Pointeur vers la liste des ressources pour PCI

Pointeur vers la table en mémoire E820.

La liste des ressources que PCI demande à décoder chevauche celle des régions de mémoire que l’interface BIOS E820 signale. (Ce type de conflit n’est jamais autorisé).

Si le paramètre 1 est égal à 0x10, le BIOS ACPI n’a pas pu déterminer correctement le mappage d’état système à appareil. Dans ce cas, le paramètre 3 spécifie le problème exact et les paramètres restants ont les définitions suivantes.

Paramètre 2 Paramètre 3 Paramètre 4 Cause

Extension ACPI dont le mappage est nécessaire

0x0

Le DEVICE_POWER_STATE (il s’agit de « x+1 »)

_PRx a été mappé vers un état S non pris en charge.

Extension ACPI dont le mappage est nécessaire

0x1

Le SYSTEM_POWER_STATE qui ne peut pas être mappée

ACPI ne peut pas trouver un état D à associer à l’état S.

Extension ACPI dont le mappage est nécessaire

0x2

Le SYSTEM_POWER_STATE qui ne peut pas être mappée

L’appareil prétend pouvoir réveiller le système lorsque celui-ci se trouve dans cet état S, mais le système ne prend pas réellement en charge cet état S.

Si le paramètre 1 est égal à 0x11, le système n’a pas pu entrer en mode ACPI. Dans ce cas, le paramètre 2 spécifie le problème exact et les paramètres restants ont les définitions suivantes.

Paramètre 2 Paramètre 3 Paramètre 4 Cause

0x0

0

0

Le système n’a pas pu initialiser l’interpréteur AML.

0x1

0

0

Le système n’a pas pu trouver RSDT.

0x2

0

0

Le système n’a pas pu allouer de structures de pilotes critiques.

0x3

0

0

Le système n’a pas pu charger RSDT.

0x4

0

0

Le système n’a pas pu charger DDBs.

0x5

0

0

Le système ne peut pas connecter le vecteur d’interruption.

0x6

0

0

SCI_EN n’est jamais activé dans le registre de contrôle PM1.

0x7

Un pointeur vers la table qui avait une mauvaise somme de contrôle

Révision du créateur

La table de somme de contrôle est erronée.

0x8

Pointeur vers la table que l’ACPI n’a pas pu charger

Révision du créateur

ACPI a échoué à charger la DDB.

0x9

Version FADT

0

Version du microprogramme non prise en charge.

0xA

0

0

Le système n’a pas pu trouver MADT.

0xB

0

0

Le système n’a pas pu trouver de structures SAPIC locales valides dans le MADT.

Cause

La valeur du paramètre 1 indique l’erreur.

Résolution

Si vous déboguez cette erreur, utilisez l’extension !analyze -v. Cette extension affiche toutes les données pertinentes (extensions d’appareil, nsobjects ou tout ce qui est approprié à l’erreur spécifique).

Si vous n’effectuez pas de débogage, cette erreur indique que vous devez obtenir un nouveau BIOS. Contactez votre fournisseur ou accédez à Internet pour obtenir un nouveau BIOS.

Si vous ne pouvez pas obtenir un BIOS mis à jour ou si le BIOS le plus récent n’est pas encore compatible ACPI, vous pouvez désactiver le mode ACPI pendant la configuration du mode texte. Pour désactiver le mode ACPI, appuyez sur la touche F7 lorsque vous êtes invité à installer les pilotes de stockage. Le système ne vous informe pas que la touche F7 a été enfoncée, mais elle désactive silencieusement l’ACPI et vous permet de poursuivre votre installation.

Notes

Une table de routage PCI (_PRT) est l’objet BIOS ACPI qui spécifie la façon dont tous les périphériques PCI sont connectés aux contrôleurs d’interruption. Un ordinateur avec plusieurs bus PCI peut avoir plusieurs _PRTs.

Vous pouvez afficher un _PRT dans le débogueur à l’aide de l’extension !acpikd.nsobj et de l’adresse de l’objet _PRT comme son argument.

Voir aussi

Référence du Code de vérification de bogue