USBFN_SET_DEVICE_STATE 콜백 함수(usbfnattach.h)
디바이스 상태 및 운영 버스 속도를 설정하는 필터 드라이버의 구현입니다.
통사론
USBFN_SET_DEVICE_STATE UsbfnSetDeviceState;
NTSTATUS UsbfnSetDeviceState(
[in] PVOID Context,
[in] USBFN_DEVICE_STATE DeviceState,
[in] USBFN_BUS_SPEED BusSpeed
)
{...}
매개 변수
[in] Context
드라이버 정의 컨텍스트에 대한 포인터입니다.
[in] DeviceState
디바이스의 상태를 나타내는 USBFN_DEVICE_STATE형식화된 플래그입니다.
[in] BusSpeed
버스 속도를 나타내는 USBFN_BUS_SPEED형식화된 플래그입니다.
반환 값
작업이 성공하면 콜백 함수는 STATUS_SUCCESS 반환하거나 NT_SUCCESS(status)가 TRUE인 다른 상태 값을 반환해야 합니다. 그렇지 않으면 NT_SUCCESS(status)가 FALSE인 상태 값을 반환해야 합니다.
발언
연결 및 분리 검색을 지원하려면 USB 하위 필터 드라이버가 지원을 게시해야 합니다. 게시 프로세스 중에 드라이버는 이 콜백 함수의 구현도 등록합니다. 자세한 내용은 전용 충전기를 지원하기 위한 USB 필터 드라이버참조하세요.
낮은 필터 드라이버는 호스트에 연결할 때 제대로 충전을 구성하기 위해 디바이스 상태 변경에 대한 알림이 필요하거나 USB를 통한 충전을 사용하지 않도록 설정해야 하는 랩 시나리오에서 USBFN_SET_DEVICE_STATE 콜백 함수를 구현할 수 있습니다.
예제
NTSTATUS
UsbLowerFilter_SetDeviceState(
_In_ PVOID Context,
_In_ USBFN_DEVICE_STATE DeviceState,
_In_ USBFN_BUS_SPEED BusSpeed
)
{
PPDCP_CONTEXT PdcpContext = NULL;
PAGED_CODE();
// Get our context
PdcpContext = DeviceGetUsbLowerFilterContext((WDFDEVICE)Context);
PdcpContext->CurrentDeviceState = DeviceState;
PdcpContext->BusSpeed = BusSpeed;
return STATUS_SUCCESS;
}
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | Windows |
최소 KMDF 버전 | 1.0 |
최소 UMDF 버전 | 2.0 |
헤더 | usbfnattach.h |
IRQL | PASSIVE_LEVEL |
참고 항목
독점 충전기 지원하기 위한 USB 필터 드라이버