インテル® Agilex™ ハード・プロセッサー・システム (HPS) のリモート・システム・アップデート・ユーザーガイド

ID 683184
日付 11/10/2021
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

6.3. コンフィグレーション・ポインター・ブロック

コンフィグレーション・ポインター・ブロックには、試行するアプリケーション・イメージのリストが優先度順に含まれています。

決定ファームウェアは、コンフィグレーション・ポインター・ブロックを使用して、パワーアップ時にロードするイメージ、nCONFIG、または前のイメージが失敗したかどうかを判別します。

決定ファームウェアは、CPBに書き込みを行うことはありません。ただし、値をクリアすることにより、ファクトリー・アップデート・イメージ、または正常に完了した後の決定ファームウェア・アップデート・イメージを削除する場合を除きます。決定ファームウェアがCPBを消去することはありません。

HPSソフトウェア (U-BootとLibRSUの両方) では、CPBを使用して、アプリケーション・イメージを追加または削除し、それらの優先度を変更します。これは通常、フラッシュを消去した後に未使用の位置 (すべてのビットが「1」に設定されている) に新しいエントリーを書き込むか、または対応する位置にゼロを書き込んでイメージをキャンセルすることによって行われます。時折、HPSソフトウェアは、キャンセルされたエントリーでフルになった場合にCPBを消去する必要があります。このプロセスは、「CPB圧縮」と呼ばれています。

コンフィグレーション・ポインター・ブロックのコピーは2つあります。新しい内容を書き込むために一方のCPBが消去されると、もう一方のCPBはそのままになります。最初のCPBが完全にフラッシュに書き込まれる前に電源障害が発生した場合でも、2番目のCPBは有効なままになります。CPBが消去および再入力された後、最後に書き込まれるCPBヘッダーには magic フィールドがあります。不正な magic フィールドは、電源障害が発生し、CPBコピーが無効であることを示しています。

CPB0が無効であることを決定ファームウェアが検出すると、代わりにCPB1を使用しようとします。両方のCPBが無効な場合、決定ファームウェアはファクトリー・イメージをロードします。決定ファームウェアは、CPB0または、CPB0とCPB1の両方が破損しているかどうかをユーザーに報告します。

1つのCPBのみが破損している場合、HPSソフトウェアは自動的に破損を検出し、破損したCPBを他の適切なコピーから回復させます。これは、U-BootとLibRSUの両方で、初期化時に発生します。

magic フィールドに加えて、HPSソフトウェアはCPBの整合性をチェックします。これは、すべてのエントリーが有効なSPTパーティションに対応しているかを検証することにより行います。また、2つのCPBを比較し、同一でない場合は両方が破損していると見なします。

両方のCPBが破損している場合、U-BootとLibRSUの両方から通知され、使用可能な機能が制限されます。保存したコピーを復元するか、空のCPBを作成した後に、U-BootとLinuxの両方からイメージを追加することにより、CPBを回復できます。