DisplayPort: Altmode 길들이기

소식

홈페이지홈페이지 / 소식 / DisplayPort: Altmode 길들이기

Jun 11, 2023

DisplayPort: Altmode 길들이기

DisplayPort altmode는 반독점적이지만 시도하면 완전히 분리될 수 있습니다. 지난번에 우리는 DisplayPort 대체 모드를 자세히 설명하는 멋진 앱노트를 발견했습니다. FUSB302를

DisplayPort altmode는 반독점적이지만 시도하면 완전히 분리될 수 있습니다. 지난번에는 DisplayPort altmode를 자세히 설명하는 멋진 앱 노트를 발견하고, FUSB302를 패킷 스니핑 모드로 전환하고 패킷 캡처를 얻었으며, PD VDM(공급업체 정의 메시지)에 대해 배우고, 캡처된 메시지를 성공적으로 재생하여 USB-C를 전환했습니다. DisplayPort 대체 모드로 포트합니다. 오늘 우리는 DisplayPort 대체 모드를 호출하고 이를 구현하고 모두 라이브러리에 연결하는 7가지 메시지를 살펴보고 실제로 DisplayPort가 작동하도록 하는 데 필요한 하드웨어를 파악합니다.

우선 다이어그램에서 볼 수 있듯이 단일 명령은 요청 또는 응답이 될 수 있습니다. 예를 들어 Discover Identity REQ(요청)를 받으면 Discover Identity ACK(응답)로 이에 응답하여 응답에 ID 데이터를 추가합니다. 일부 명령을 사용하면 DP 소스가 사용할 일부 데이터를 추가합니다. 대부분의 명령에 대해 DP 싱크는 대신 정보를 제공해야 하며, 제공된 PDF와 패킷 캡처를 사용하여 이를 수행합니다.

호환되는 USB-C 포트에서 DisplayPort를 꺼내기 위해 처리해야 하는 7가지 명령이 있습니다. 이러한 명령에 대해 다시 확인해야 하는 경우 DP altmode의 ST PDF 13페이지에 메시지 순서가 표시됩니다. 이러한 명령은 ID 검색, SVID 검색, 검색 모드, 입력 모드, DP 상태 업데이트, DP 구성 및 주의입니다. 이 중 처음 4개는 이미 기본 USB PD 표준에 부분적으로 설명되어 있고, 그 이후의 2개 DP 명령은 DisplayPort-altmode 전용이지만 우리가 가지고 있는 PDF에 충분히 설명되어 있으며, Attention 명령도 기본 표준에서 나온 것입니다. HPD 핀 ​​상태를 보고하는 데 주로 유용합니다. 처음 두 가지부터 시작하겠습니다!

처음 두 명령은 DisplayPort와 전혀 관련이 없습니다. 특히 Discover Identity 메시지는 어디에나 존재합니다. PSU에 요청할 필요도 없었던 Source_Capability 메시지와 마찬가지로, DP나 Thunderbolt가 가능한 노트북의 USB-C 포트에 연결하면 Discover Identity 명령 메시지를 받게 됩니다. 귀하의 장치가 대체 모드를 처리할 수 있는 경우 이 메시지에 응답하여 이 기능을 알릴 수 있습니다.

Discover Identity 응답에는 장치에 대한 많은 데이터가 포함되어야 합니다. 이 데이터의 대부분은 완전히 가짜일 수 있습니다. 이 데이터는 사용자가 대체 모드 어댑터임을 나타냅니다. USB 호스트 또는 USB 장치 작동이 가능한지 여부를 나타내는 두 개의 비트, 완전히 비워 둘 수 있는 "인증" 필드, USB VID 및 PID가 있습니다. 내가 아는 바로는 운영 체제에서 드라이버 선택에 사용되는 것으로 알려진 일반 USB 연결 PID 및 VID와 달리 VID 및 PID는 기능 측면에서 사용되지 않습니다. 내가 가지고 있는 어댑터의 공급업체 ID는 0xBDA, 제품 ID는 0x2172, bcdDevice 번호는 0x201입니다. 이 값은 한 번 전송되며 이후 USB-C 통신에는 전혀 표시되지 않습니다.

두 번째 명령은 Discover SVIDs입니다. SVID는 본질적으로 장치가 지원하는 대체 모드에 대한 2바이트 코드입니다. 답변이 0xFF01(추가 데이터로 0xFF010000을 응답)인 경우 DisplayPort 대체 모드 지원 장치로 인식되는 형태로 쿠키를 받습니다. 내가 소유한 장치 중 하나는 0xFF01로 응답하지만 여기에 0x25A4도 추가합니다. 이것이 펌웨어 업데이트 인터페이스인 것으로 의심됩니다. 따라서 침투 테스트를 위해 USB-C 장치를 조사하려는 경우 이는 절대적으로 벡터가 될 것입니다. 조사하다.

Discover SVID 요청에 0xFF01 응답을 제공함으로써 우리는 우리 장치가 DisplayPort 대체 모드를 지원한다고 주장합니다. 비록 사실은 제대로 구현하는 단계가 절반에 불과하더라도 구현될 때까지 위조하는 것입니다. 하지만 걱정하지 마십시오. 올바른 방향으로 가고 있으므로 이제 DisplayPort 관련 사항에 대해 이야기하겠습니다. 세 번째 명령은 검색 모드입니다. 여기서 DP 소스에 DisplayPort가 USB-C 커넥터에 매핑해야 하는 정확한 방법을 알려줍니다.