NdisMCompleteDmaTransfer マクロ (ndis.h)
NdisMCompleteDmaTransfer 関数は、システム DMA 転送操作が完了したことを示します。 さらに DMA 転送に備えて、システム DMA コントローラーをリセットします。
構文
void NdisMCompleteDmaTransfer(
_S,
_H,
_B,
_O,
_L,
_M_
);
パラメーター
_S
この関数が DMA 転送の最終的な状態を返す呼び出し元が指定した変数へのポインター。次のいずれかになります。
NDIS_STATUS_SUCCESS
データが転送され、ホスト メモリまたはデバイスにフラッシュされ、データの整合性が維持されます。
NDIS_STATUS_RESOURCES
DMA コントローラーがリリースされましたが、データ転送が一貫性を持たなかった可能性があります。
_H
MiniportInitializeEx 関数が を呼び出したときに返されるハンドル NdisMRegisterDmaChannel 関数。
_B
以前に NdisMSetupDmaTransfer に渡されたバッファー記述子へのポインター。
_O
転送が開始されたバイト オフセット。 この値は NdisMSetupDmaTransfer にも渡されました。
_L
転送の長さ (バイト単位)。 この値は NdisMSetupDmaTransfer にも渡されました。
_M_
ホスト から NIC への転送 (送信操作など) の場合は TRUE。
戻り値
なし
解説
転送されたデータが NIC のメモリに存在すると見なされる前に、WriteToDevice を TRUE に設定して NdisMCompleteDmaTransfer を呼び出す必要があります。 転送されたデータをホスト メモリから読み取る前に、WriteToDevice を FALSE に設定して NdisMCompleteDmaTransfer を呼び出す必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista の NDIS 6.0 および NDIS 5.1 ドライバー (「NdisMCompleteDmaTransfer (NDIS 5.1)」を参照) でサポートされています。 Windows XP での NDIS 5.1 ドライバー (「NdisMCompleteDmaTransfer (NDIS 5.1)」を参照) でサポートされています。 |
対象プラットフォーム | ユニバーサル |
Header | ndis.h (Ndis.h を含む) |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 | Irql_MCO_Function(ndis) |