Linux では、適切な sysfs コントロールに「ソース」または「シンク」を書き込むことで、特定のポートの電源の方向を制御できます。例:
# 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 ポータブル バッテリーでは動作しません。
<ブロック引用>
USB タイプ C が一緒に接続されている場合、どの充電がどのように決定されるのでしょうか?
これまでのところ、これはすべて理解を超えて複雑です。 Type-C コネクタには 2 つの役割があります
<オール>これらはほぼ独立した機能です。全体の機能は、
<オール>...
n.どちらのポートも DRD と DRP です。
ここですべての順列を失いました。 UCSI は、Microsoft がこの膨大な順列性を API 標準に取り入れようとする試みです。主なアイデアについては、このプレゼンテーションと、「UCSI インターフェイス」に関するその他の多くの出版物を参照してください。