IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_STATUS IOCTL(ucmtcpciportcontrollerrequests.h)
유니버설 직렬 버스 Type-C 포트 컨트롤러 인터페이스 사양에 따라 모든 상태 레지스터의 값을 가져옵니다. 클라이언트 드라이버는 CC_STATUS, POWER_STATUS 및 FAULT_STATUS 레지스터의 값을 검색해야 합니다.
주 코드
입력 버퍼
모든 컨트롤 레지스터 값을 포함하는 UCMTCPCI_PORT_CONTROLLER_GET_STATUS_IN_PARAMS 구조체에 대한 포인터입니다. 구조를 얻으려면 수신된 프레임워크 요청 개체를 전달하여 WdfRequestRetrieveInputBuffer 호출합니다.
입력 버퍼 길이
UCMTCPCI_PORT_CONTROLLER_GET_STATUS_IN_PARAMS 구조체의 크기입니다.
출력 버퍼
UCMTCPCI_PORT_CONTROLLER_GET_STATUS_OUT_PARAMS 구조체에 대한 포인터입니다. 구조를 얻으려면 수신된 프레임워크 요청 개체를 전달하여 WdfRequestRetrieveOutputBuffer 호출합니다.
출력 버퍼 길이
UCMTCPCI_PORT_CONTROLLER_GET_STATUS_OUT_PARAMS 구조체의 크기입니다.
상태 블록
Irp->IoStatus.Status 요청이 성공하면 STATUS_SUCCESS 설정됩니다. 그렇지 않으면 상태가 NTSTATUS 코드로 적절한 오류 조건으로.
발언
UcmTcpciCx 클래스 확장은 상태 레지스터의 값을 검색하기 위해 이 IOCTL 요청을 보냅니다. 클라이언트 드라이버는 포트 컨트롤러와 통신하여 레지스터 값을 검색하고 수신된 UCMTCPCI_PORT_CONTROLLER_GET_STATUS_OUT_PARAMS 구조를 해당 값으로 채워야 합니다. 요청을 완료하려면 드라이버가 WdfRequestSetInformation 호출하여 프레임워크 요청 개체에서 채워진 구조를 설정한 다음, WdfRequestComplete 호출하여 요청을 완료해야 합니다.
요구 사항
요구 | 값 |
---|---|
헤더 | ucmtcpciportcontrollerrequests.h |
참고 항목
드라이버 IOCTL 요청 만들기
WdfIoTargetSendInternalIoctlOthersSynchronously