This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TPS25750:您使用哪个工具来为 TPS25750创建固件文件?

Guru**** 2585365 points
Other Parts Discussed in Thread: TPS25750, TPS25750EVM, TPS25751

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1348261/tps25750-which-tool-do-you-use-to-create-firmware-file-for-tps25750

器件型号:TPS25750
主题中讨论的其他器件:TPS25751

我在以下链接中使用 Linux 驱动程序(Linux v6.8):
/drivers/usb/typec/tipd
它支持 TPS25750

从下面的 dmesg 日志中、我认为驱动程序正在工作。 问题是没有固件文件或固件文件格式不正确。

root@rs802-reader:~# dmesg | grep tps
[6.9699743] tps6598x 1-0021:用于消费者复位的 GPIO 查找
[ 6.9696961] tps6598x 1-0021:使用器件树进行 GPIO 查找
[ 6.969813] tps6598x 1-0021:使用查找表进行 GPIO 查找
[6.969818] tps6598x 1-0021:未找到 GPIO 使用者复位
[ 8.558088] tps6598x 1-0021:tps25750_complete_patch_process:故障器件补丁完成状态:64

请告诉我使用哪种工具来创建固件文件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的联系。  

    Chris 已被指派到此线程、将会帮助您完成。

    谢谢,

    舒巴

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Thinh:

    很遗憾、我们不直接支持 Linux 驱动程序、因为它们不是由 TI 开发的、因此我无法就特定于驱动程序的问题为您提供支持。

    关于"固件文件"、我们有一个在线 GUI、可通过产品页面获取。  

    GUI 可用于回答有关系统的调查问卷,然后生成二进制或。 需要在启动时加载 TPS25750的 C 文件。 这可以通过将完整的闪存二进制文件加载到连接到 TPS25750的 I2Cc 线路的 I2C 闪存中来实现,也可以提供。 复制到 MCU 中、以便通过 I2C 加载。

    谢谢。此致、

    克里斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chris、您好!

    我已成功使用上述方法为驱动程序创建固件文件。 驱动程序中的日志显示如下:

    [7.323612] tps6598x 1-0021:用于消费者复位的 GPIO 查找
    [ 7.323630] tps6598x 1-0021:使用器件树进行 GPIO 查找
    [ 7.323681 ] tps6598x 1-0021:使用查找表进行 GPIO 查找
    [7.32366] tps6598x 1-0021:未找到 GPIO 用户复位
    [9.474426] tps6598x 1-0021:控制器切换到"APP"模式

    但我遇到了另一个问题:成功加载由"TPS25750 Application Customization Tool"工具创建的 bin 文件时、系统因电源故障而复位。 我仅使用20W 电源通过 USB type C 为电路板供电、并注意到电源 LED 异常闪烁。 当指示灯闪烁一次时,整个系统将重新启动。 只有在成功加载 bin 文件时才会发生。

    我还附上了我通过"TPS25750 Application Customization Tool"导出的设置、请帮助检查调查问卷中是否有任何不正确的答案  

    https://drive.google.com/file/d/1QcXwFkE_TcF0HqMPtJHCc0tBerFTImMr/view?usp=drive_link

    或者告诉我 bin 文件中的数组是如何组织的、以便我自己进行检查。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Thinh:

    这是定制电路板还是您使用的是 TPS25750EVM?

    如果是 EVM、您能否指定它是哪一个 LED?

    您的电池电量耗尽配置是什么?

    20W 电源是什么意思? 通告的电压/电流是多少?

    您是否可以使用 PD 分析器获取故障的 PD 日志?

    我看不到您分享的.json 中有任何突出的内容。 启动时系统消耗负载还是在空载条件下进行测试?

    除了 LED 闪烁之外、您还有其他信息吗? 您在 VBUS 和 PPHV 上看到什么电压、您是否能够捕获示波器迹线?


    请注意、如果您还处于设计早期、我们强烈建议您改用 TPS25751。 请见 此处

    谢谢。此致、

    克里斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chris、您好!

    让我回答您的问题如下:

    这是定制电路板还是您使用的是 TPS25750EVM?

    => 我使用我的定制板。

    如果是 EVM、您能否指定它是哪一个 LED?

    => 我使用我的定制板。

    您的电池电量耗尽配置是什么?

    =>电路板没有备用电池。

    20W 电源是什么意思? 通告的电压/电流是多少?

    =>我使用戴尔充电器适配器。 输出为5V-30A/15W |--|9V-30A/270W |--|15V-3A/45W |--|20V-3.25A/65W。 抱歉我的错误、它是65W 充电器、而不是20W。

    您是否可以使用 PD 分析器获取故障的 PD 日志?

    =>我会尝试一下。 我需要安装哪些工具?

    我看不到您分享的.json 中有任何突出的内容。 启动时系统消耗负载还是在空载条件下进行测试?

    => PD 的功率输出用于 CPU (iMX8)、RAM、EMMC 和 SD 卡、以及一些其他无源组件...

    除了 LED 闪烁之外、您还有其他信息吗? 您在 VBUS 和 PPHV 上看到什么电压、您是否能够捕获示波器迹线?

    => LED 通电后、它直接连接到电源、LED 亮起。 此 LED 位于定制电路板上。  

    VBUS=19.86V、PPHV=19.86V

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chris、您好!

    我也不知道该怎么做、因此我提供的信息可能用处不大、也可能不准确。 现在、我想确定我是不是由 TPS25750 Application Customization Tool 正确创建了配置文件?

    我能否将该配置文件加载到 TPS25750EMV 中并比较结果?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好 Thinh

    您的电池电量耗尽配置是什么?

    =>电路板没有备用电池。

    [/报价]

    我想问您的 ADCIN1/2分频器设置为什么?

    =>我将尝试一下。 我需要安装哪些工具?

    您可能需要获取一台 PD 分析仪或者已经拥有一台。 它是一个 USB-C CC 线路监听器、您可以在 USB-C 端口和电缆之间串联、并且能够报告消息。 有一些在线工具、但我们通常推荐的工具最近已停产。

    => PD 的功率输出用于 CPU (iMX8)、RAM、EMMC 和 SD 卡以及一些其他无源组件。

    这似乎不显著? 在2-3+ A 范围内什么也没有? 如果没有,你应该没问题。

    => LED 通电后、它直接连接到电源、LED 亮起。 此 LED 位于定制电路板上。  

    VBUS=19.86V、PPHV=19.86V

    [/报价]

    它会在电压为5V 时点亮吗? VBUS 上有电压吗?

    是否可以将此配置文件加载到 TPS25750EMV 中并比较结果?

    是的! 应该可以了。 当您这样做时、您能否在示波器上测量 VBUS 和 PPHV 引脚并分享您发现的结果?

    谢谢。此致、

    克里斯

    [/quote][/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chris、您好!

    我截取了原理图并将其上传到 google 驱动器。 请看一下。

    ADCIN1/ADCIN2 分频器设置为始终启用受电方。

    我做了进一步的调试,并注意到以下:

    驱动程序中有一个用于引导加载程序的 清除电池电量耗尽标志。

    /*
     * The dead battery flag may be triggered when the controller
     * port is connected to a device that can source power and
     * attempts to power up both the controller and the board it is on.
     * To restore controller functionality, it is necessary to clear
     * this flag
     */
    if (status & TPS_BOOT_STATUS_DEAD_BATTERY_FLAG) {
    	ret = tps6598x_exec_cmd(tps, "DBfg", 0, NULL, 0, NULL);
    	if (ret) {
    		dev_err(tps->dev, "failed to clear dead battery %d\n", ret);
    		return ret;
    	}
    }

     

    当我禁用此代码时、不会发生如上所述的断电现象。  但在测量 PPHV/PPHV1/PPHV2引脚上的电压时、结果并不符合预期、我预计它会是19V。 而 VBUS 为5V。 电源5V LED 指示灯亮起。

    启用此代码后、确实会如上所述发生掉电现象。 在 PPHV/PPHV1/PPHV2引脚上测量电压时、结果符合预期、我预计电压为19V。   VBUS 为19V。  电源5V LED 指示灯 亮起约一秒钟、然后熄灭。  系统重新启动并且过程不断重复。

    清除电池电量耗尽标志的过程是否会导致 PD 更改 PD 控制器的电源输入源?  这会导致电路板断电吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Thinh:

    到谷歌驱动器的链接不工作为我。

    清除电池电量耗尽标志的过程是否导致 PD 更改 PD 控制器的电源输入源?  这会导致主板断电?

    如果您从 USB-C 端口获取系统电源、它将在 ADCIN 分频器设置的"电池电量耗尽配置"中引导。 如果以这种方式加载、它会设置"电池电量耗尽标志"、指示其供电来源并防止端口提供高电压。 加载后、它将尝试从 I2C 闪存或 I2C 主机加载二进制映像。 加载二进制文件后、PD 控制器应根据加载了二进制映像的应用配置映像(通过 GUI 设置的设置)运行。

    DBFg 命令会清除电池电量耗尽标志。 您可以在 TPS25750 TRM 中了解有关该命令的更多信息、

    当我禁用此代码时,不会出现如上所述的断电现象。  但在测量 PPHV/PPHV1/PPHV2引脚上的电压时、结果并不符合预期、我预计它会是19V。 而 VBUS 为5V。 电源5V LED 指示灯亮起。

    您仍在将二进制映像加载到 PD 控制器吗? 您能否共享用于保存用于 GUI 的应用程序配置的.json 文件?

    Question:

    1.您能解释一下系统如何引导和加载二进制文件吗? 以及是否发送任何其他命令以及何时发送这些命令。

    2.当 VBUS 被卡在5V 时、你能读取状态寄存器(0x1A)、电源路径状态寄存器(x026)、和引导状态寄存器(0x2D)吗? 这些可能提供了一些信息、以帮助了解 PD 控制器为何仅灌入5V 电压。

    谢谢。此致、

    克里斯