PEXECUTE_DMA回调函数 (video.h)
HwVidExecuteDma 是微型端口驱动程序实现的回调例程,它负责从散点/收集列表中检索物理地址/长度对,并编程硬件以启动实际的 DMA 传输。
语法
PEXECUTE_DMA PexecuteDma;
void PexecuteDma(
PVOID HwDeviceExtension,
PVP_DMA_ADAPTER VpDmaAdapter,
PVP_SCATTER_GATHER_LIST SGList,
PVOID Context
)
{...}
参数
HwDeviceExtension
指向微型端口驱动程序的每个适配器存储区域的指针。 有关详细信息,请参阅 设备扩展。
VpDmaAdapter
指向 VP_DMA_ADAPTER 结构的指针,该结构表示总线-主适配器。 此结构是通过调用 VideoPortGetDmaAdapter 返回的。
SGList
指向 VP_SCATTER_GATHER_LIST 结构的指针。 视频端口驱动程序填充此结构中的信息,并将此结构传递给微型端口驱动程序。
Context
指向从 VideoPortStartDma 传入的驱动程序确定上下文的指针。
返回值
无
备注
此函数在 Windows XP 及更高版本中可用。
如果微型端口驱动程序报告设备不支持散点/收集,则传递到此例程的散点/收集列表中将只有一个元素。 在调用 VideoPortCompleteDma 之前,散点/收集列表有效。
视频端口驱动程序的 VideoPortStartDma 函数执行的最后一个任务是调用微型端口驱动程序的 HwVidExecuteDma 回调例程。 正是此回调实际上执行 DMA 传输操作。
HwVidExecuteDma 必须位于非分页内存中,并且不得访问任何可分页代码或数据。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | video.h (包括 Video.h) |