IDmaChannelSlave::Start 方法(portcls.h)

Start 方法启动从属 DMA 对象。

语法

NTSTATUS Start(
  ULONG   MapSize,
  BOOLEAN WriteToDevice
);

参数

MapSize

指定要映射的已分配缓冲区的字节数。 映射大小不得超过调用 IDmaChannel::AllocateBuffer 中分配的缓冲区的大小。

WriteToDevice

指定数据移动的方向。 如果为 TRUE,则数据将从缓冲区移动到设备。 如果为 FALSE,数据将从设备移动到缓冲区。

返回值

此方法返回 NTSTATUS。 如果调用成功,它将返回STATUS_SUCCESS。 否则,该方法将返回适当的错误代码。 如果调用方尝试启动已启动的通道,该方法将立即返回错误代码STATUS_UNSUCCESSFUL。

言论

注意

Microsoft支持多样化的包容性环境。 本文包含有关无偏见通信 Microsoft风格指南 识别为排除项的术语的参考。 本文中的单词或短语用于一致性,因为它当前显示在软件中。 当软件更新为删除语言时,本文将更新为对齐方式。

该方法首先设置映射寄存器,以映射适配器对象的分配缓冲区的第一个 MapSize 字节。 接下来,该方法启动 MapSize 中指定的字节数的 DMA 传输。

有关此方法的详细信息,请参阅 IDmaChannel::BufferSizeIDmaChannelSlave::ReadCounter

要求

要求 价值
标头 portcls.h
IRQL PASSIVE_LEVEL

另请参阅

IDmaChannelSlave 接口