ZHCU943A November 2020 – July 2022 TPS25750
PD 控制器支持表 1-1 中提供的唯一地址接口寄存器(唯一地址寄存器)。除非另有说明,否则 2 或 4 字节寄存器是小端字节序(数据字节 1 中为最低有效字节)。此处定义了使用四字符代码 (4CC) 的寄存器,其中第一个字符对应于数据字节 1 的 ASCII 值,第二个字符对应于数据字节 2 的 ASCII 值,依此类推。任何少于 4 个字符的 4CC 代码均以空格 (0x20) 填充尾部。
对于标记为非唯一的寄存器,主机可以使用任一从器件地址读取该寄存器,并读回相同的值。对于标记为非唯一的寄存器,主机可以使用任一从器件地址写入该寄存器。
在下面的寄存器映射中,仅实现了显示的寄存器地址。所有其他寄存器地址都是必须忽略的只读保留寄存器。
寄存器编号(1) | 寄存器名称 | 访问 | 数据字节数 | 每个端口均唯一 | 说明 |
---|---|---|---|---|---|
0x02 | 保留 | ||||
0x03 | MODE | RO | 4 | 否 | 指示端口的运行状态。在某些模式下,PD 控制器的功能受限。请参阅Topic Link Label2.1 |
0x04 | 类型 | RO | 4 | 否 | 默认响应是 'I2C '(注意第 4 个字符是空格)。 |
0x06 | CUSTUSE | RO | 8 | 是 | 这 8 个字节分配给客户按需使用。PD 控制器不使用此寄存器。此寄存器可能会在应用程序自定义期间更改。 |
0x07 | 保留 | ||||
0x08 | CMD1 | RW | 4 | 是 | 主命令接口的命令寄存器。在初始化期间和成功处理每个命令后,由 PD 控制器清除为 0x0000_0000。如果将无法识别的命令写入此寄存器,则会将其替换为 4CC 值 "!CMD"。 |
0x09 | DATA1 | RW | 64 | 是 | 主命令接口 (CMD1) 的数据寄存器。 |
0x0A-0x0C | 保留 | ||||
0x0D | DEVICE_CAPABILITIES | RO | 4 | 否 | 所支持特性的说明。请参阅Topic Link Label2.2 |
0x0E | 保留 | ||||
0x0F | VERSION | RO | 4 | 否 | 二进制编码的十进制版本号,引导加载程序/应用程序代码版本。表示为 VVVV.MM.RR,去掉前导 0。例如,65794d(十进制)-> 0x00010102 -> 0001.01.02 -> 1.1.2(版本)。版本信息以小端字节序格式返回,即字节 1 = RR,字节 2 = MM 等。16 位字段 RR 用作供电方能力扩展消息和受电方能力扩展消息中的固件版本。 |
0x10-0x13 | 保留 | ||||
0x14 | INT_EVENT1 | RO | 11 | 是 | I2Cs_IRQ 的中断事件位字段。如果此寄存器中的任何位为 1,则会将 I2Cs_IRQ 引脚下拉至低电平。请参阅Topic Link Label2.3 |
0x15 | 保留 | ||||
0x16 | INT_MASK1 | RW | 11 | 是 | INT_EVENT1 的中断屏蔽位字段。INT_EVENT1 中的某个位在此寄存器中清除后无法设置。请参阅Topic Link Label2.3 |
0x17 | 保留 | ||||
0x18 | INT_CLEAR1 | RW | 11 | 是 | INT_EVENT1 的中断清除位字段。此寄存器中设置的位从 INT_EVENT1 中清除。请参阅Topic Link Label2.3 |
0x19 | 保留 | ||||
0x1A | STATUS | RO | 5 | 是 | 非中断事件的状态位字段。请参阅Topic Link Label2.4 |
0x1B-0x25 | 保留 | ||||
0x26 | POWER_PATH_STATUS | RO | 5 | 否 | 电源路径状态。请参阅Topic Link Label2.5 |
0x27-0x28 | 保留 | ||||
0x29 | PORT_CONTROL | RW | 4 | 是 | 影响系统策略的配置位。这些位在正常运行期间可能会更改,用于控制相应的端口。PD 控制器在写入时不会立即采取操作。对此寄存器所做的更改将在下次调用相应的策略时生效。由应用程序自定义进行初始化。请参阅Topic Link Label2.6 |
0x2A-0x2C | 保留 | ||||
0x2D | BOOT_STATUS | RO | 5 | 否 | 引导过程的详细状态。此寄存器提供有关 PD 控制器引导标志、客户 OTP 配置和器件版本的详细信息。请参阅Topic Link Label2.7 |
0x2E | BUILD_DESCRIPTION | RO | 49 | 否 | Build 说明。这是用于唯一标识自定义 build 信息的 ASCII 字符串。 |
0x2F | DEVICE_INFO | RO | 40 | 否 | 器件信息。这是一个 ASCII 字符串,包含 PD 控制器的硬件和固件版本信息。 |
0x30 | RX_SOURCE_CAPS | RO | 29 | 是 | 收到的供电方能力。此寄存器存储通过 BMC 收到的最新供电方能力消息。请参阅Topic Link Label2.8 |
0x31 | RX_SINK_CAPS | RO | 29 | 是 | 收到的受电方能力。此寄存器存储通过 BMC 收到的最新受电方能力消息。请参阅Topic Link Label2.9 |
0x32 | TX_SOURCE_CAPS | RW | 31 | 是 | 要发送的供电方能力。此寄存器存储用于传出供电方能力 PD 消息的 PDO 和设置。由应用程序自定义进行初始化。请参阅Topic Link Label2.10 |
0x33 | TX_SINK_CAPS | RW | 29 | 是 | 要发送的受电方能力。此寄存器存储用于传出受电方能力 USB PD 消息的 PDO。由应用程序自定义进行初始化。请参阅Topic Link Label2.11 |
0x34 | ACTIVE_CONTRACT_PDO | RO | 6 | 是 | 有效合约的电源数据对象。此寄存器存储当前显式 USB PD 合约的 PDO 数据,如果没有合约,则为全零。请参阅Topic Link Label2.12 |
0x35 | ACTIVE_CONTRACT_RDO | RO | 4 | 是 | 有效合约的电源数据对象。此寄存器存储当前显式 USB PD 合约的 RDO,如果没有合约,则为全零。请参阅Topic Link Label2.13 |
0x36-0x3E | 保留 | ||||
0x3F | POWER_STATUS | RO | 2 | 是 | 有关连接功率的详细信息。此寄存器报告有关连接功率的状态。请参阅Topic Link Label2.14 |
0x40 | PD_STATUS | RO | 4 | 是 | PD 和 Type-C 状态机的状态。此寄存器包含有关 PD 消息状态和 Type-C 状态机的详细信息。请参阅Topic Link Label2.15 |
0x41-0x68 | 保留 | ||||
0x69 | TYPEC_STATE | RO | 4 | 是 | 包含两个 CCn 引脚的当前状态。请参阅Topic Link Label2.17 |
0x6A-0x71 | 保留 | ||||
0x72 | GPIO_STATUS | RO | 8 | 否 | 捕获所有 GPIO 引脚的状态和设置。请参阅Topic Link Label2.19 |
0x73-0x7E | 保留 |
PD 控制器会执行表 1-1 中定义的唯一地址接口任务。
命令 4CC | 类型 | 命令摘要 | 参考 |
---|---|---|---|
PBMs | 补丁捆绑包更新 | 启动补丁突发下载序列 | 请参阅Topic Link Label3.3.1 |
PBMc | 补丁捆绑包更新 | 补丁突发下载完成 | 请参阅Topic Link Label3.3.2 |
PBMe | 补丁捆绑包更新 | 补丁突发模式退出 | 请参阅Topic Link Label3.3.3 |
GO2P | 补丁捆绑包更新 | 强制 PD 控制器恢复到 'PTCH' 模式并等待 I2C 上的补丁。 | 请参阅Topic Link Label3.3.5 |
GSkC | PD 消息 | PD 获取受电方能力 | 请参阅Topic Link Label3.2.5 |
GSrC | PD 消息 | PD 获取供电方能力 | 请参阅Topic Link Label3.2.6 |
SSrC | PD 消息 | PD 发送供电方能力 | 请参阅Topic Link Label3.2.7 |
SWDF | PD 消息 | PD DR_Swap 到 DFP | 请参阅Topic Link Label3.2.3 |
SWSk | PD 消息 | PD PR_Swap 到受电方 | 请参阅Topic Link Label3.2.1 |
SWSr | PD 消息 | PD PR_Swap 到供电方 | 请参阅Topic Link Label3.2.2 |
SWUF | PD 消息 | PD DR_Swap 到 UFP | 请参阅Topic Link Label3.2.4 |
DBfg | 系统 | 清除电池电量耗尽标志 | 请参阅Topic Link Label3.4.1 |
I2Cr | 系统 | 在 I2Cm 上执行 I2C 读取事务。 | 请参阅Topic Link Label3.4.2 |
I2Cw | 系统 | 在 I2Cm 上执行 I2C 写入事务。 | 请参阅Topic Link Label3.4.3 |