エラーの挿入 (関数インデックス 17)
この _DSM バイト アドレス指定可能エネルギー支援関数クラス インターフェイス (関数インターフェイス 1) 関数は、NVDIMM-N モジュール ファームウェアにエラーを挿入します。 この関数の目的は、ソフトウェア検証を有効にすることです。 プラットフォームでは、ユーザーが BIOS 設定を構成した後など、特定のシナリオでのみエラー挿入を有効にすることを選択できます。 ホストは、クエリ エラー挿入状態 (関数インデックス 16) を呼び出して、エラー挿入関数が有効になっているかどうかを確認できます。
レジスタは、バイト アドレス指定可能なエネルギー支援インターフェイス 仕様 で定義されています。
入力
Arg3
フィールド | バイト長 | バイトオフセット | 登録 | 説明 |
---|---|---|---|---|
挿入操作の失敗 | 2 | 0 | バイト 0: INJECT_OPS_FAILURES (2, 0x60); バイト 1: INJECT_BAD_BLOCKS が 1 (バイト 0 のビット 7) の場合、このフィールドは INJECT_BAD_BLOCK_CAP されます (2、0x67)。 それ以外の場合は、0 になります。 | 挿入する操作または不揮発性メモリ エラーを指定します。 |
エネルギー ソースの障害を挿入する | 1 | 2 | バイト 0: INJECT_ES_FAILURES (2、0x64) | 挿入するエネルギー ソース (ES) エラーを指定します。 |
ファームウェア更新エラーの挿入 | 1 | 3 | バイト 0: INJECT_FW_FAILURES (2、0x65) | 挿入するファームウェア操作エラーを指定します。 |
出力
フィールド | バイト長 | バイトオフセット | 説明 |
---|---|---|---|
Status | 4 | 0 | この関数は、関数固有のエラー コード 1: エラー挿入が無効になっています。2: サポートされていないため、1 つ以上のエラーを挿入できませんでした。詳細については、「_DSMメソッドの出力」を参照してください。 |
Note
正常に挿入されたすべてのエラーはメイン関数固有のエラー コード 2 を返すときに挿入されます。 この関数から関数固有のエラー コード 2 が返された場合は、挿入されたエラーの取得 (関数インデックス 18) を呼び出して、挿入できなかったエラーを取得します。
解説
一部のエラー挿入機能は省略可能であり、デバイスでサポートされていない場合があります。 省略可能なエラー挿入の一覧については、適切なバイト アドレス指定可能なエネルギー支援インターフェイス JEDEC 仕様を参照してください。
プラットフォームは、ホストがサポートされていないエラーを挿入しようとしたかどうかを検出する必要があります。 これは、エラー挿入レジスタに書き込み、同じレジスタ & を読み取り、すべての目的のビットが設定されているかどうかを確認することで行います。 たとえば、プラットフォームでは、運用エラーを挿入するために次の処理が行われます。
[挿入操作エラー] フィールドのバイト 0 の値を INJECT_OPS_FAILURES レジスタに書き込みます。
INJECT_OPS_FAILURES レジスタを読み取ります。
INJECT_OPS_FAILURES の新しい値が [挿入操作エラー] フィールドのバイト 0 と一致する場合は、成功を返します。 それ以外の場合は、関数固有のエラー コード 2 を返します。