インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

18.5.1.9. DMA

DMAには2つの動作モードがあります。コントローラーの機能に応じて、ソフトウェアをプログラミングしてスキャッターギャザーDMAモードまたはバッファーDMAモードを選択します。

コントローラーが汎用ルートハブとして機能している場合は、分割転送をサポートするバッファーDMAモードを選択するようにソフトウェアをプログラミングする必要があります。

汎用ルートハブの機能が必要ではない場合、またはコントローラーがデバイスモードでコンフィグレーションされている場合は、スキャッターギャザーDMAモードを選択するようにソフトウェアをプログラミングすることができます。

照会されたデバイスのステータスまたは機能に基づき動作モードを動的に切り替える場合は、ソフトウェア・ドライバーで2つの動作モードを完全に切り替える必要があります。例えば、コントローラーをデフォルトでスキャッターギャザーDMAモードにし、高速および低速機能を備える汎用HUBを検出した際にのみモードを変更することができます。切り替えにおけるいくつかの基本的な要件は次のとおりです。
  • モード変更の前に、ソフトリセットを発行する必要があります。
  • バッファーDMAモードが選択されている場合は、ホストモードの周期的な要求のキューの深さを16に設定しないようにします。
  • デバイスを再列挙する必要があります。