IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_CONTROL IOCTL(ucmtcpciportcontrollerrequests.h)

유니버설 직렬 버스 Type-C 포트 컨트롤러 인터페이스 사양에 따라 정의된 모든 컨트롤 레지스터의 값을 가져옵니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

모든 컨트롤 레지스터 값을 포함하는 UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_IN_PARAMS 구조체에 대한 포인터입니다. 구조를 얻으려면 받은 프레임워크 요청 개체를 전달하여 WdfRequestRetrieveInputBuffer 를 호출합니다.

입력 버퍼 길이

UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_IN_PARAMS 구조체의 크기입니다.

출력 버퍼

UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS 구조체에 대한 포인터입니다. 구조를 얻으려면 받은 프레임워크 요청 개체를 전달하여 WdfRequestRetrieveOutputBuffer 를 호출합니다.

출력 버퍼 길이

UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS 구조체의 크기입니다.

상태 블록

Irp->요청이 성공하면 IoStatus.Status 가 STATUS_SUCCESS 설정됩니다. 그렇지 않으면 NTSTATUS 코드로 적절한 오류 조건에 대한 상태입니다.

설명

UcmTcpciCx 클래스 확장은 컨트롤 레지스터의 값을 검색하기 위해 이 IOCTL 요청을 보냅니다. 클라이언트 드라이버는 포트 컨트롤러와 통신하여 POWER_CONTROL, ROLE_CONTROL, TCPC_CONTROL 및 FAULT_CONTROL 값을 등록하고 받은 UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS 구조를 해당 값으로 채워야 합니다. 요청을 완료하려면 드라이버가 WdfRequestSetInformation을 호출한 다음 WdfRequestComplete를 호출하여 프레임워크 요청 개체 에서 채워진 구조를 설정해야 합니다.

요구 사항

요구 사항
헤더 ucmtcpciportcontrollerrequests.h

추가 정보

드라이버에서 IOCTL 요청 만들기

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously