USB Type-C 커넥터용 Windows 드라이버 개발 개요

USB Type-C 시스템이 PD 상태 컴퓨터를 구현하지 않거나 상태 컴퓨터를 구현하지만 비 ACPI 전송을 통해 UCSI를 지원하지 않는 경우 커넥터용 드라이버를 작성해야 합니다. 이 경우 Microsoft에서 제공하는 UCSI 드라이버를 로드할 수 있습니다.

UcmTcpciCx 클라이언트 드라이버를 구현하기 위한 의사 결정 프로세스를 보여 주는 순서도입니다.

제안된 솔루션

다음 표에서는 하드웨어 또는 펌웨어 기능을 기반으로 하는 솔루션을 권장합니다.

하드웨어/펌웨어 기능 분리할 수 없음 추가 기능 카드
USB Type-C 커넥터에는 PD 상태 컴퓨터가 없습니다. UcmTcpciCx에 클라이언트 드라이버를 씁니다.

UcmTcpciCx 포트 컨트롤러 클라이언트 드라이버 시작
UcmCx에 클라이언트 드라이버를 씁니다.

UcmCx 샘플로 시작합니다.
커넥터는 ACPI와 UCSI 규격입니다. 기본 제공 드라이버, UcmUcsiCx.sys 및 UcmUcsiAcpiClient를 로드합니다. USB TYPE-C 커넥터 UCSI(시스템 소프트웨어 인터페이스) 드라이버를 참조하세요. 해당 없음
커넥터는 ACPI 없이 UCSI 규격입니다. UcmUcsiCx에 클라이언트 드라이버를 씁니다. 자세한 내용은 UCSI 클라이언트 드라이버 작성을 참조하세요.

UcmCx 샘플로 시작하고 ACPI 부분을 필요한 버스에 대한 구현으로 바꿉니다.
UcmCx에 클라이언트 드라이버를 씁니다.
PD 상태 컴퓨터가 있지만 UCSI 규격이 아닙니다. UcmCx에 클라이언트 드라이버를 씁니다.

UcmCx 샘플로 시작합니다.
UcmCx에 클라이언트 드라이버 쓰기

UcmCx 샘플로 시작합니다.

섹션 내용

앞의 표에 제안된 솔루션을 구현하려면 다음 topics 읽어보세요.

항목 Description
아키텍처: Windows 시스템을 위한 USB Type-C 디자인 USB Type-C 시스템의 일반적인 하드웨어 디자인과 하드웨어 구성 요소를 지원하는 Microsoft 제공 드라이버에 대해 설명합니다.
USB Type-C Windows 시스템에서 함수 컨트롤러 가져오기 함수 컨트롤러용 드라이버는 USB Type-C 커넥터가 지원하는 충전 수준에 대해 운영 체제에 알리고 충전을 시작할 수 있을 때 배터리 하위 시스템에 알리고 디바이스가 그릴 수 있는 최대 전류 양을 알립니다.
USB Type-C Windows 시스템에 대한 이중 역할 컨트롤러 가져오기 USB URS(역할 스위치 드라이버)는 이중 역할 컨트롤러의 역할 전환 기능을 처리하는 WDF 클래스 확장 및 해당 클라이언트 드라이버 집합입니다. 시스템에 이중 역할 컨트롤러가 있는 경우 시스템의 USB Type-C 커넥터의 파트너 포트에 연결된 디바이스에 따라 시스템의 역할을 전환할 수 있습니다. 이렇게 하면 유선 도킹과 같은 흥미로운 시나리오가 가능합니다.
USB Type-C 커넥터 드라이버 작성 USB Type-C 커넥터를 관리하는 UCM(USB 커넥터 관리자)과 커넥터 드라이버의 예상 동작에 대해 설명합니다.
USB Type-C 포트 컨트롤러 드라이버 작성 PD 상태 컴퓨터 없이 USB Type-C 커넥터와 통신하는 USB Type-C 포트 컨트롤러 드라이버를 작성하는 방법을 설명합니다.
UCSI 클라이언트 드라이버 작성 비 ACPI 전송을 사용하는 UCSI 규격 컨트롤러용 드라이버를 작성하는 방법을 설명합니다.
USB Type-C Policy Manager 클라이언트 드라이버 작성 Microsoft에서 제공하는 USB Type-C 정책 관리자는 USB Type-C 커넥터의 활동을 모니터링합니다. Windows 버전 1809에는 정책 관리자에 클라이언트 드라이버를 작성하는 데 사용할 수 있는 프로그래밍 인터페이스 집합이 도입되었습니다. 클라이언트 드라이버는 USB Type-C 커넥터에 대한 정책 결정에 참여할 수 있습니다. 이 집합을 사용하면 커널 모드 내보내기 드라이버 또는 사용자 모드 드라이버를 작성하도록 선택할 수 있습니다.

추가 정보