DXGKDDI_CONNECTDOORBELL回调函数 (d3dkmddi.h)

重要

某些信息与预发行产品相关,该产品在商业发布之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。

DxgkDdiConnectDoorbell) 以前创建的门铃对象 连接到硬件队列 (或重新连接。

语法

DXGKDDI_CONNECTDOORBELL DxgkddiConnectdoorbell;

NTSTATUS DxgkddiConnectdoorbell(
  INOUT_PDXGKARG_CONNECTDOORBELL pArgs
)
{...}

参数

pArgs

[in/out]指向描述要连接的门铃 的DXGKARG_CONNECTDOORBELL 结构的指针。

返回值

如果 KMD 能够成功将其门铃对象连接到指定的硬件队列,DxgkDdiConnectDoorbell 将返回STATUS_SUCCESS。 此调用通常不应失败;但是,返回的失败代码来自 GPU 丢失或停止的无法恢复的情况。

注解

当 UMD 调用 D3DKMTConnectDoorbell 时,OS 会调用 DxgkDdiConnectDoorbell ,以便 KMD 可以执行以下操作:

  • 提供映射到物理门铃位置的 CPU 虚拟地址。
  • 在硬件队列对象、门铃对象、门铃物理地址、GPU 计划程序等之间建立所需的连接。

从此 DDI 返回时,KMD 应将此物理地址视为为此特定硬件队列保留的地址。 但是,OS 对门铃的物理地址没有唯一性要求。 也就是说,KMD 可以选择与多个逻辑门铃/硬件队列共享同一物理地址,具体取决于硬件实现。 例如,某些硬件可能会选择将相同的物理地址分配给单个硬件上下文的所有硬件队列。 甚至可能有多个逻辑门铃共享相同的 4KB 物理页面,但在页面中使用唯一偏移量。

要求

要求
最低受支持的客户端 WIN11_FUTURE
标头 d3dkmddi.h
IRQL PASSIVE_LEVEL

另请参阅

D3DKMTConnectDoorbell

DXGKARG_CONNECTDOORBELL

DxgkDdiCreateDoorbell

DxgkDdiDisconnectDoorbell