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 구조체를 0으로 설정하고 구조체의 Size 멤버를 설정합니다.

그런 다음, 함수는 구조체의 IdleTimeout 멤버를 IdleTimeoutDefaultValue로 설정하고 , UserControlOfIdleSettings 멤버를IdleAllowUserControl로 설정하고, Enabled 멤버를 WdfUseDefault로 설정합니다.

또한 함수는 PowerUpIdleDeviceOnSystemWake 멤버를 WdfUseDefault 로 설정하고 IdleTimeoutType 멤버를 DriverManagedIdleTimeout으로 설정합니다.

또한 함수는 ExcludeD3Cold 멤버를 WdfUseDefault로 설정합니다.

다음으로, 함수는 구조체의 IdleCaps 멤버를 IdleCaps 매개 변수가 지정하는 값으로 설정합니다.

마지막으로 , IdleCaps 매개 변수가 IdleUsbSelectiveSuspend 또는 IdleCanWakeFromS0을 지정하는 경우 함수는 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