UcmUcsiPpmStart 函数 (Ucmucsippm.h)
指示 UcmUcsiCx 类扩展开始向客户端驱动程序发送请求。
语法
NTSTATUS UcmUcsiPpmStart(
[in] UCMUCSIPPM PpmObject
);
参数
[in] PpmObject
客户端驱动程序在上一次调用 UcmUcsiPpmCreate中收到的平台策略管理器 (PPM) 对象的句柄。
返回值
如果作成功,则返回STATUS_SUCCESS。 否则,此方法可以返回适当的 NTSTATUS 值。
言论
UcmUcsiPpmStart 指示客户端驱动程序现在已准备好从类扩展接收请求。 在此调用后,类扩展将启动 OS 策略管理器(OPM)和命令处理程序状态计算机。
客户端驱动程序在调用 UcmUcsiPpmStop 进行错误恢复后,必须调用 UcmUcsiPpmStart。
此 DDI 启动类扩展需要执行的作来初始化 OPM 和命令处理程序状态机。 客户端驱动程序必须调用 UcmUcsiPpmStart,以通知 UcmUcsiCx 驱动程序已准备好接收 IOCTL 请求。 建议从 EVT_WDF_DEVICE_PREPARE_HARDWARE 回调函数或系统调用此回调之后进行此调用。
尝试在 PPM 启动后启动 PPM 会导致错误情况。
客户端调用 UcmUcsiPpmStart后,类扩展会将大量命令发送到 PPM 固件,以获取 PPM 和连接器功能及其状态。 由于与固件的交互次数较高,我们强烈建议 UcmUcsiCx 客户端实现程序在启动时调用此 DDI 一次,而不是从低功率状态(如 D0Entry 回调)恢复。 当客户端实现 S0 闲置时,这尤其如此。
要求
要求 | 价值 |
---|---|
最低 KMDF 版本 | 1.27 |
最低 UMDF 版本 | N/A |
标头 | Ucmucsippm.h (包括 UcmUcsiCx.h) |
库 | UcmUcsiCxStub.lib |
IRQL | PASSIVE_LEVEL |