EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON 콜백 함수(wdfdevice.h)

[KMDF 및 UMDF에 적용]

드라이버의 EvtDeviceArmWakeFromSxWithReason 이벤트 콜백 함수 암(즉, 활성화)은 저전력 디바이스 상태에서 절전 모드 해제 신호를 트리거할 수 있도록 디바이스를 활성화합니다. 절전 모드 해제 신호로 인해 디바이스가 작동 상태(D0)로 들어가고 시스템이 작동 상태(S0)로 진입합니다.

구문

EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON EvtWdfDeviceArmWakeFromSxWithReason;

NTSTATUS EvtWdfDeviceArmWakeFromSxWithReason(
  [in] WDFDEVICE Device,
  [in] BOOLEAN DeviceWakeEnabled,
  [in] BOOLEAN ChildrenArmedForWake
)
{...}

매개 변수

[in] Device

프레임워크 디바이스 개체에 대한 핸들입니다.

[in] DeviceWakeEnabled

TRUE인 경우 디바이스의 시스템 절전 모드 해제 기능이 활성화되었음을 나타내는 부울 값입니다.

[in] ChildrenArmedForWake

TRUE이면 하나 이상의 자식 디바이스가 시스템을 절전 모드에서 해제할 수 있음을 나타내는 부울 값입니다.

반환 값

EvtDeviceArmWakeFromSxWithReason 콜백 함수에 오류가 발생하지 않으면 STATUS_SUCCESS 또는 NT_SUCCESS(상태)이 TRUE인 다른 상태 값을 반환해야 합니다. 그렇지 않으면 NT_SUCCESS(상태)가 FALSE와 같은 상태 값을 반환해야 합니다.

NT_SUCCESS(상태)가 FALSE인 경우 프레임워크는 드라이버의 EvtDeviceDisarmWakeFromSx 콜백 함수를 호출합니다. (프레임워크는 PnP 관리자에게 디바이스 오류를 보고하지 않습니다.)

설명

버전 1.7 이상 KMDF는 EvtDeviceArmWakeFromSxWithReason 콜백 함수 외에도 EvtDeviceArmWakeFromSx 콜백 함수를 지원합니다.

EvtDeviceArmWakeFromSxWithReason 콜백 함수를 등록하려면 드라이버가 WdfDeviceInitSetPowerPolicyEventCallbacks를 호출해야 합니다. 드라이버는 EvtDeviceArmWakeFromSx 콜백 함수 또는 EvtDeviceArmWakeFromSxWithReason 콜백 함수를 등록할 수 있지만 둘 다 등록할 수는 없습니다.

EvtDeviceArmWakeFromSxWithReason 콜백 함수는 드라이버가 프레임워크가 호출한 이유를 확인할 수 있는 두 가지 매개 변수를 제공합니다.

  • 프레임워크는 WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS 구조의 Enabled 멤버가 디바이스가 시스템을 절전 모드에서 해제할 수 있음을 나타내는 경우 DeviceWakeEnabled 매개 변수를 TRUE로 설정합니다.
  • 디바이스의 자식 디바이스 중 하나 이상이 시스템을 절전 모드에서 해제할 수 있고 WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS ArmForWakeIfChildrenAreArmedForWake 멤버가 TRUE로 설정된 경우 프레임워크는 ChildrenArmedForWake 매개 변수를 TRUE로 설정합니다.
다음 시나리오로 인해 이러한 매개 변수 중 하나 또는 둘 다 TRUE일 수 있습니다.
  • 드라이버의 디바이스가 시스템의 절전 모드를 해제할 수 있습니다.
  • 디바이스의 자식 디바이스 중 하나 이상이 시스템을 절전 모드 해제할 수 있습니다.
  • 디바이스와 하나 이상의 자식 디바이스가 모두 시스템을 절전 모드 해제할 수 있습니다.
EvtDeviceArmWakeFromSxWithReason 콜백 함수에 대한 자세한 내용은 EvtDeviceArmWakeFromSx의 설명 섹션을 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.7
최소 UMDF 버전 2.0
머리글 wdfdevice.h(Wdf.h 포함)
IRQL PASSIVE_LEVEL

추가 정보

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSx

EvtDeviceDisarmWakeFromSx