WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT函数 (wdfdevice.h)

[适用于 KMDF 和 UMDF]

WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT 函数初始化驱动程序的 WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS 结构。

语法

VOID WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT(
  [out] PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings,
  [in]  WDF_POWER_POLICY_S0_IDLE_CAPABILITIES  IdleCaps
);

参数

[out] Settings

指向驱动程序分配 WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS 结构的指针。

[in] IdleCaps

WDF_POWER_POLICY_S0_IDLE_CAPABILITIES类型枚举器。

返回值

没有

言论

首先,WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT 函数对指定的 WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS 结构进行零,并设置结构的 大小 成员。

然后,该函数将结构的 IdleTimeout 成员设置为 IdleTimeoutDefaultValue,将 UserControlOfIdleSettings 成员设置为 IdleAllowUserControl,并将已启用 成员 设置为 WdfUseDefault

此外,该函数将 PowerUpIdleDeviceOnSystemWake 成员设置为 WdfUseDefault,并将 IdleTimeoutType 成员设置为 DriverManagedIdleTimeout

此外,该函数将 ExcludeD3Cold 成员设置为 WdfUseDefault

接下来,该函数将结构的 IdleCaps 成员设置为 IdleCaps 参数指定的值。

最后,如果 IdleCaps 参数指定 IdleUsbSelectiveSuspendIdleCanWakeFromS0,则函数会将 DxState 成员设置为 PowerDeviceMaximum。 如果 IdleCaps 参数指定 IdleCannotWakeFromS0,则函数会将 DxState 成员设置为 PowerDeviceD3

例子

有关使用 WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT的代码示例,请参阅 WdfDeviceAssignS0IdleSettings

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfdevice.h (包括 Wdf.h)

另请参阅

WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS