GNU/Linux >> Linux の 問題 >  >> Linux

USB Type-C、電力供給の方向はどのように制御されますか?

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 つの役割があります

<オール>
  • データ通信
  • 電力供給。
  • これらはほぼ独立した機能です。全体の機能は、

    <オール>
  • 両方のポートが USB ホスト
  • 両方のポートが USB デバイスです
  • 一方のポートは Dual-role-Data で、もう一方のポートはそうではありません
  • 1 つのポートはデュアルロール電源です
  • ...

    n.どちらのポートも DRD と DRP です。

    ここですべての順列を失いました。 UCSI は、Microsoft がこの膨大な順列性を API 標準に取り入れようとする試みです。主なアイデアについては、このプレゼンテーションと、「UCSI インターフェイス」に関するその他の多くの出版物を参照してください。


    Linux
    1. 自動マウントのUSBキーを取得するにはどうすればよいですか?

    2. デバイスを USB 3 ポートに接続したことを確認するにはどうすればよいですか?

    3. Linux でイーサネット ポートの物理的な状態を確認するにはどうすればよいですか?

    1. シェルがSshから制御されているかどうかを検出する方法は?

    2. USBポートへの電源をオフにします。または、USBサブシステム全体の電源をオフにしますか?

    3. Setcapを使用して、ポート80でローカルホストに転送するリモートポートを設定するにはどうすればよいですか?

    1. USBで編集する許可を得る方法は?

    2. Linux で USB デバイスのチップセットを特定するにはどうすればよいですか?

    3. cat はどうやってシリアルポートのボーレートを知るのですか?