USB Type-C, 전원 전달 방향은 어떻게 제어되나요?

USB Type-C, 전원 전달 방향은 어떻게 제어되나요?

USB 유형 C가 함께 연결된 노트북과 보조 배터리(또는 노트북 두 대)가 있다고 가정해 보겠습니다. 그러면 어느 것이 충전되는지 어떻게 결정됩니까?

운전자가 제어하나요? Linux 커널은 이러한 제어를 지원합니까?

업데이트:

이 패치 세트(현재 v14)가 표시되지만 아직 메인라인에는 없습니다.

https://lwn.net/Articles/710741/

그러나 UCSI라는 것이 이미 4.10에 있습니다.

http://lxr.free-electrons.com/source/drivers/usb/misc/Kconfig

270 config UCSI
271         tristate "USB Type-C Connector System Software Interface driver"
272         depends on ACPI
273         help
274           UCSI driver is meant to be used as a convenience tool for desktop and
275           server systems that are not equipped to handle USB in device mode. It
276           will always select USB host role for the USB Type-C ports on systems
277           that provide UCSI interface.

그러면 이 문제에 대한 Linux 커널 드라이버가 4.10 현재 진행 중이라고 말하는 것이 맞습니까?

답변1

Linux에서는 적절한 sysfs 제어에 "source" 또는 "sink"를 작성하여 특정 포트의 전원 방향을 제어할 수 있습니다. 예:

# echo source >/sys/class/typec/port0/power_role
# cat /sys/class/typec/port0/power_role
[source] sink

괄호 안의 용어는 현재 전력이 어떻게 흐르는지를 나타냅니다. 커널 문서를 참조하세요.https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-typec

물론 이 모든 기능은 USB Type-C 포트에 연결된 장치가 Power Delivery를 지원하는 경우에만 작동합니다. 따라서 2019년 현재 PD를 거의 지원하지 않는 일반적인 Type-C 전원 어댑터 또는 대부분의 Type-C 휴대용 배터리에서는 작동하지 않습니다.

답변2

USB Type C를 함께 연결하면 어떤 충전을 어떻게 결정하나요?

이것은 지금까지 이해할 수 없을 정도로 복잡합니다. Type-C 커넥터는 두 가지 역할을 수행합니다.

  1. 데이터 통신
  2. 전력 공급.

이는 거의 독립적인 기능입니다. 전체 기능은 다음 여부에 따라 달라집니다.

  1. 두 포트 모두 USB 호스트입니다.
  2. 두 포트 모두 USB 장치입니다.
  3. 한 포트는 이중 역할 데이터이고 다른 포트는 그렇지 않습니다.
  4. 하나의 포트는 이중 역할 전원입니다.

...

N. 두 포트 모두 DRD와 DRP입니다.

여기서 모든 순열을 잃었습니다. UCSI는 이러한 광범위한 호환성을 API 표준으로 길들이려는 Microsoft의 시도입니다. 주요 아이디어는 다음을 참조하세요.프레젠테이션, "UCSI 인터페이스"에 대한 더 많은 출판물.

답변3

위에서 Marc가 답변한 것처럼 PD 방향은 를 통해 제어할 수 있습니다. /sys/class/typec/port*/power_role그러나 Thinkpad Yoga 6에서와 같이 작동하지 않는 경우에는 다음과 같습니다.

sudo bash -c 'echo sink > /sys/class/typec/port1/power_role'
bash: line 1: echo: write error: Invalid argument

그런 다음 언급한 대로 보조 배터리를 빠르게 다시 연결하여 "하드웨어" 방법을 시도해 볼 수 있습니다.이 답변.

처음에는 저도 회의적이었지만 놀랍게도 효과가 있었습니다! 약간의 연습이 필요했습니다. 플러그를 뽑았다가 빠르게 다시 연결해야 하지만 너무 빠르지는 않습니다. 제 경우에는 Romoss PPD20 보조 배터리를 사용하고 있으며 충전 표시등이 깜박임을 멈출 때까지 약 0.5초 동안 플러그를 뽑아야 합니다.

관련 정보