NetDmaIsr 函数 (netdma.h)

注意 不支持 NetDMA 接口

Windows 8 及更高版本。

 
NetDmaIsr 函数通知 NetDMA 接口 DMA 通道上发生了 DMA 传输中断。

语法

NET_DMA_EXPORT VOID NetDmaIsr(
  [in]  PVOID            NetDmaChannelHandle,
  [in]  PHYSICAL_ADDRESS DmaDescriptor,
  [out] PULONG           pCpuNumber
);

参数

[in] NetDmaChannelHandle

标识 DMA 通道的句柄。 DMA 提供程序驱动程序在调用 中从 NetDMA 接口收到此句柄 ProviderAllocateDmaChannel 函数。

[in] DmaDescriptor

与中断关联的 DMA 描述符的物理地址。

[out] pCpuNumber

与中断 DPC 关联的 CPU 数。 NetDMA 接口在 NetDmaIsr 返回之前在提供的地址写入此 CPU 编号。

返回值

备注

DMA 提供程序驱动程序在其中断服务例程中调用 NetDmaIsr 函数 (ISR) 。

如果设置了 NET_DMA_DESCRIPTOR 结构的 ControlFlags 成员中的 NET_DMA_INTERRUPT_ON_COMPLETION 标志,则 DMA 引擎应在处理 DMA 描述符后为 DMA 通道生成中断。 清除此标志后,DMA 引擎不会生成中断。

注意 调用 ISR 时,当前 DMA 描述符可能已不同于触发中断的描述符。
 
DMA 提供程序驱动程序应在其 ISR 处理程序中尽可能少地执行工作。 驱动程序应将 I/O 操作延迟到中断 DPC 处理程序。

要求

要求
最低受支持的客户端 支持 Windows Vista 中的 NetDMA 1.0 驱动程序。
目标平台 通用
标头 netdma.h (包括 Netdma.h)
IRQL DEVICE_LEVEL

另请参阅

NET_DMA_DESCRIPTOR

ProviderAllocateDmaChannel