Partager via


interface _DSM pour la classe de fonction d’énergie d’un octet adressable JEDEC (interface de fonction 1)

Cette section décrit l’interface Device-Specific Method (_DSM) conçue pour être mappée à la norme JEDEC Byte Addressable Energy Backed Interface afin de réduire la complexité du BIOS. Il fournit une base commune de rapports sur les fonctions d’appareil & fonctionnalités, de sorte que les logiciels de système d’exploitation peuvent interagir avec différentes implémentations par le biais des mêmes mécanismes. En outre, il permet la prise en charge des fonctionnalités spécifiques au fournisseur via l’accès aux registres I2C.

Les plateformes qui sont conformes à l’interface _DSM pour la classe de fonction d’énergie d’adresse byte (interface de fonction 1) peuvent prendre en charge un NVDIMM-N qui implémente la spécification JEDEC Byte Addressable Energy Backed Interface (classe de fonction 0x01 et interface de fonction 0x01). Pour plus d’informations, consultez la spécification JEDEC Byte Addressable Energy Backed Interface (document JESD245).

Définition GUID

Le GUID de la classe de fonction jedec addressable energy backed _DSM est 1EE68B36-D4BD-4a1a-9A16-4F8E53D46E05.

Champs et fonctions obligatoires

Les fonctions _DSM définies dans cette section doivent être implémentées dans les objets d’appareil d’espace de noms NVDIMM ACPI. Le terme Obligatoire indique si la fonction doit retourner des données valides ou non.

Le tableau suivant spécifie les fonctions et les champs obligatoires, où « ESP » signifie « Energy Source Policy ».

Index de fonction Nom de fonction Obligatoire pour Device-Managed ESP Obligatoire pour Host-Managed ESP
0 Fonctions implémentées par requête (index de fonction 0) Oui Oui
1 Obtenir l’identification NVDIMM-N (index de fonction 1) Oui Oui
2 Obtenir les conditions requises pour les opérations d’enregistrement (index de fonction 2) Oui Oui
3 Obtenir l’identification de la source d’énergie (index de fonction 3) Oui Oui
4 Obtenir les dernières informations de sauvegarde (Index de fonction 4) Oui Oui
5 Obtenir les seuils NVM (Index de fonction 5) Oui Oui
6 Définir le seuil d’avertissement du pourcentage de durée de vie de la machine virtuelle (index de fonction 6) Oui Oui
7 Obtenir les seuils de source d’énergie (index de fonction 7) Oui Non
8 Définir le seuil d’avertissement de durée de vie de la source d’énergie (index de fonction 8) Oui Non
9 Définir le seuil d’avertissement de température de la source d’énergie (index de fonction 9) Oui Non
10 Obtenir des informations d’intégrité critiques (index de fonction 10) Oui Oui
11 Obtenir les informations d’intégrité NVDIMM-N (Index de fonction 11) Oui Oui
12 Obtenir des informations sur l’intégrité de la source d’énergie (index de fonction 12) Oui Non
13 Obtenir des statistiques opérationnelles (Index de fonction 13) Oui Oui
14 Obtenir la taille de page du journal du fournisseur (index de fonction 14) Oui Oui
15 Obtenir la page journal du fournisseur (index de fonction 15) Oui Oui
16 État de l’injection d’erreur de requête (index de fonction 16) Oui Oui
17 Erreur d’injection (index de fonction 17) Oui Oui
18 Obtenir les erreurs injectées (index de fonction 18) Oui Oui
19 Effacer l’image NVM (Index de fonction 19) Oui Oui
20 Arm NVDIMM-N (Index de fonction 20) Oui Oui
21 Rétablir les paramètres d’usine par défaut (index de fonction 21) Oui Oui
22 Démarrer la mise à jour du microprogramme (index de fonction 22) Oui Oui
23 Envoyer des données de mise à jour du microprogramme (index de fonction 23) Oui Oui
24 Terminer la mise à jour du microprogramme (index de fonction 24) Oui Oui
25 Sélectionner l’emplacement d’image du microprogramme (index de fonction 25) Oui Oui
26 Obtenir les informations sur le microprogramme (index de fonction 26) Oui Oui
27 Lecture I2C (index de fonction 27) Oui Oui
28 Écriture I2C (index de fonction 28) Oui Oui
29 Lire les données typées (index de fonction 29) Oui Oui
30 Écrire des données typées (index de fonction 30) Oui Oui
31 Définir des compteurs d’erreurs de mémoire (index de fonction 31) Oui Oui

Entrée de méthode _DSM

Arg3 pour toutes les fonctions est une valeur de package. Si la fonction ne prend pas d’argument d’entrée, la valeur package ne contient aucune donnée. Si la fonction prend un argument d’entrée, la valeur package contient une mémoire tampon.

Si la fonction ne prend pas d’argument d’entrée et qu’Arg3 n’est pas un package vide, la fonction doit retourner le code d’état général des paramètres d’entrée non valides.

sortie de la méthode _DSM

Toutes les méthodes retournent une mémoire tampon d’une longueur supérieure ou égale à 4 octets. Les 4 premiers octets de la mémoire tampon de retour sont structurés comme suit :

Champ Longueur d’octet Décalage d’octets Description
Code d’état général 2 0 Code général status. Une liste des valeurs possibles se trouve ci-après.
code d’erreur Function-Specific 1 2 Code d’erreur spécifique à la fonction appelée. Ce champ contient uniquement des informations valides si le code d’état général est égal au code d’erreur spécifique à la fonction.
Code d’erreur propre au fournisseur 1 3 Codes de status propres au fournisseur. Ce champ contient uniquement des informations valides si le code d’état général est égal au code d’erreur propre au fournisseur.

Voici les valeurs possibles pour le code d’état général.

Valeur Signification
0 Opération réussie

1 Non pris en charge

2 Paramètres d’entrée non valides

3 Erreur de communication I2C

4 code d’erreur Function-Specific

5 Code d’erreur propre au fournisseur

6 0xFFFF – Réservé

Tout code d’état général différent de zéro indique que la fonction a échoué. Aucune fonction définie dans cette version de la spécification ne doit retourner le code d’état généralde Non pris en charge. Toutes les fonctions obligatoires doivent retourner des données valides ou un code d’erreur indiquant une erreur d’exécution. Les fonctions non obligatoires peuvent retourner un code d’erreur Function-Specific pour signaler qu’il n’y a pas de données valides à retourner.

Tous les bits et octets réservés doivent avoir la valeur 0. Sauf indication contraire, tous les champs multioctets doivent être représentés de manière peu endienne.

Notes

Une référence à un registre Byte Addressable Energy-Backed Interface décrit de nombreux champs de retour pour les fonctions spécifiées dans cette interface. Ces champs doivent être identiques au registre défini dans la révision « Byte Addressable Energy Backed Interface, version 1.0, norme JEDEC n° 2233-22 » de la spécification de l’interface Byte-Addressable Energy-Backed. La version de la spécification est indiquée dans le champ Révision de la spécification retourné par la fonction Get NVDIMM-N Identification (Function Index 1).

Certains champs de retour font référence à des informations sur la source d’énergie (ES). Lorsque la stratégie ES est gérée par l’appareil, la plateforme doit lire le registre matériel spécifié dans la description du champ pour récupérer toutes les informations relatives à ES. Lorsque la stratégie ES est gérée par l’hôte, la plateforme doit obtenir les informations relatives à ES par le biais de mécanismes spécifiques à la plateforme. Dans ce cas, toutes les informations relatives à ES doivent être présentées dans la même disposition binaire que le registre matériel spécifié dans la description du champ.