JAJA928 July 2025 TPS55288 , TUSB1044
TPS65992S が TPS55288 および TUSB1044 を管理するには、I2C3 コントローラ ポートを正しいペリフェラル アドレスで設定し、各デバイスに対応するコマンド インデックスをマッピングする必要があります。TPS65992S アプリケーション カスタマイズ ツール (PDコントローラ ファームウェアを構成するための GUI) を使用して、各外部 I2C ペリフェラルに 7 ビットアドレスが追加され、アドレス インデックス(PD ファームウェアで使用される識別子) が割り当てられます。このツールでは、特定の PD イベント (パワーオン、アタッチ、契約交渉など) に関連付けて、I2C レジスタの読み書き操作のシーケンスを定義することもできます。
このデザインでは、I2C3 コントローラ ポートを次のように設定しています:
TUSB1044 (USB-C リドライバ) – 7 ビット I2C アドレス0x12。このデバイスは、PD コントローラの設定でAddress1 (アドレス インデックス = 1) として追加されます。イベント テーブルでは、TUSB1044 向けのコマンド用にレジスタ インデックス 9 から 28 を割り当てています。(I2C モードにおける TUSB1044 のアドレスはピン ストラップによって決まりますが、ここではアドレスを 0x12 に設定しています。)
2 つのペリフェラルとアドレスが定義されると、TPS65992S のファームウェアは、割り当てられたアドレス インデックスを使って I2C トランザクションを正しいデバイスに送信できるようになります。図 2-1に、TPS65992S GUI の例を示します:Address0は 0x74 の TPS55288 に対応し、Address1は 0x12 の TUSB1044 に対応します。アドレス マップが設定できたら、PD コントローラの I2C コントローラ イベント テーブルにエントリを作成できます。各エントリ (上記のレジスタ インデックスで管理) は、イベント トリガ、ターゲットとなるペリフェラル (アドレス インデックスで指定)、ペリフェラル上のレジスタアドレス、書き込み (または読み出し) データ バイト、およびコマンドが方向に依存するかどうかを指定します。以下のセクションでは、それぞれのデバイスに対して設定されたコマンド シーケンスの詳細を説明します。
図 2-1 TPS65992S GUI での I2C コントローラ設定