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,例如发送作。
返回值
没有
言论
NdisMCompleteDmaTransfer 必须使用 WriteToDevice 设置为 TRUE,然后才能将传输的数据视为 NIC 内存中存在。 NdisMCompleteDmaTransfer 必须使用 WriteToDevice 设置为 FALSE,然后才能从主机内存中读取传输的数据。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista 中支持 NDIS 6.0 和 NDIS 5.1 驱动程序(请参阅 NdisMCompleteDmaTransfer (NDIS 5.1)。 支持 NDIS 5.1 驱动程序(请参阅 Windows XP 中的 NdisMCompleteDmaTransfer (NDIS 5.1)。 |
目标平台 | 普遍 |
标头 | ndis.h (包括 Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
DDI 符合性规则 | Irql_MCO_Function(ndis) |