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.

[参考译文] AM5728:PMIC POWERGOOD 问题、参考设计 TI_AM572x_PM_RevA3a

Guru**** 2445440 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/666782/am5728-pmic-powergood-problem-ref-design-ti_am572x_pm_reva3a

器件型号:AM5728
主题中讨论的其他器件:PMP

除了 较新的 PMIC 器件型号 TPS6590378外、我的电路板使用 TI_AM572x_PM_RevA3a 参考设计。 从我的读数中可以看到、此 PMIC 与 TPS6590376引脚对引脚兼容、因此我不希望将-8变为我的问题的原因。  我测量了电压轨、它们符合预期;然而、PMIC_POWERGOOD (引脚 J7)为低电平。

我的猜测是、这是使用引脚 G9 (GPIO_7)作为 POWERHOLD 的副作用。 在我的电路板上、引脚 G9通过10K 电阻器连接到 LDO_VRTC、以便在没有电源开关的情况下加电。 从 PMIC 数据表中、我发现 GPIO_7也可用于监控外部 SMPS。 使用 GPIO_7代替 POWERHOLD 而不是监控是否是 PMIC 电源不好的原因?

此外、从 PMIC 数据表中、我发现可以在 SMPS_POWERGOOD_MASK1和 SMPS_POWERGOOD_MASK2寄存器中屏蔽所有 POWERGOOD 源。 这是否是一种合理的修复方法来使 POWERGOOD 指示电源正常? 如果是、我可以在哪里找到更改寄存器的说明?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您尚未看到它、这与您的问题相关:

    e2e.ti.com/.../3266.should-i-use-powerhold-or-pwron-to-turn-on-the-pmic

    GPIO_7在 TPS6590378上充当 POWERHOLD。 但是、POWERHOLD 预计为高电平、以打开器件。 您看到它很低? 您是否从 LDO_VRTC 获取电压?

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

    PMIC_POWERGOOD (TP5)为低电平。 LDO_VRTC 为高电平。

    引导引脚为:

    0:低电平

    1:高

    2、3、4:低电平

    5:高

    6、7:低

    8:高

    9、10、11、12、13、 14:低

    15:高

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

    在 SPL 和 u-boot 侧、我看到的是 A15和 PMIC 之间的 I2C 总线上的大量超时:

    我在 SPL 中进行了一些"静态跟踪"、我想知道我看到的所有 MMC 消息是 A15不能向 PMIC 发送消息来"调优"或配置为 MMC1供电的电源轨吗?  请参阅下面的内容。

    SPL 消息:

    WAIT_TO_Bb 中超时:STATUS=1000

    WAIT_TO_Bb 中超时:STATUS=1000

    尝试从 MMC1引导

    WAIT_TO_Bb 中超时:STATUS=1000

    tps65903x:无法设置 LDO1电压。

    **无法使用 MMC 0:1加载 env **

    使用默认环境

    U-Boot 消息:

    CPU :DRA752-GP ES2.0

    型号:TI AM572x EVM 修订版 A3

    主板:Am572x 定制硬件 GW SCU 修订版

    DRAM: 2GiB

    MMC: WAIT_TO_Bb 中超时:STATUS=1000

    WAIT_TO_Bb 中超时:STATUS=1000

    OMAP SD/MMC:0、OMAP SD/MMC:1.

    WAIT_TO_Bb 中超时:STATUS=1000

    tps65903x:无法设置 LDO1电压。

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    无法设置信号电压

    卡未响应电压选择!

    **设备 MMC 0 **错误

    使用默认环境

    WAIT_TO_Bb 中超时:STATUS=1000

    TI_i2c_EEPROM_init 失败1.

    setup_board_EEPROM_env:am57xx_custom_hw_gw_scu_reva1

    WAIT_TO_Bb 中超时:STATUS=1000

    WAIT_TO_Bb 中超时:STATUS=1000

    WAIT_TO_Bb 中超时:STATUS=1000

    SCSI: SATA link 0 timeout。

    AHCI 0001.0300 32插槽1端口3 Gbps 0x1不支持 SATA 模式

    标志:64位 NCQ stag pm led clo only pmp pio 贫民窟 part ccc apst

    正在扫描设备总线...

    找到0个器件。

    网络:  未设置。 验证第一个电子保险丝 MAC

    CPsw

    按空格键可在2秒钟内中止自动引导

    警告:无法确定要使用的设备树

    USB_boot 当前已禁用

    SCSI_boot 当前已禁用

    WAIT_TO_Bb 中超时:STATUS=1000

    tps65903x:无法设置 LDO1电压。

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    无法设置信号电压

    卡未响应电压选择!

    WAIT_TO_Bb 中超时:STATUS=1000

    tps65903x:无法设置 LDO1电压。

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    WAIT_TO_Bb 中超时:STATUS=1000

    错误:从器件读取错误:fdf35918寄存器:0x50!

    在 drivers/power/PMIC/Palmas.c:40/Palmas_read ()上

    无法设置信号电压

    卡未响应电压选择!

    高速缓存:范围[fffb310、fffb10]上的操作未对齐

    **第一个描述符不是1:1上的主要描述符**

    切换到分区#0,确定

    mmc1 (第0部分)是当前器件

    高速缓存:范围[fffb310、fffb10]上的操作未对齐

    **第一个描述符不是1:1上的主要描述符**

    正在扫描 MMC 设备1.

    正在检查:/uEnv.txt ...

    **无分区表- MMC 1**

    正在检查:/boot/uEnv.txt ...

    **无分区表- MMC 1**

    **无分区表- MMC 1**

    **无分区表- MMC 1**

    **无分区表- MMC 1**

    **无分区表- MMC 1**

    **无分区表- MMC 1**

    **无分区表- MMC 1**

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

    您是否在 POWERGOOD 引脚上连接了上拉电阻器? 此引脚为开漏引脚、需要一个1.8V 上拉电源(建议使用 VRTC)、然后您才能在引脚上看到高电平。

    默认情况下、POWERGOOD 仅监控 SMPS12、因此这是查看 POWERGOOD 是否应为高电平的关键电源轨。 其默认值为1.15V、因此如果您看到该电压、则 POWERGOOD 应设置为高电平。

    此致、
    Karl
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    POWERGOOD 引脚上没有上拉电阻器、因为这是一个输出-也不会在参考设计上拉电阻器、而且我们之前版本的电路板上的 POWERGOOD 在没有上拉电阻器的情况下处于高电平。
    SMPS12在电路板上的电压为1.15V、但 POWERGOOD 仍为0V。

    POWERGOOD 是否为低电平是否重要? PMIC 是否在内部使用此值? 如果 POWERGOOD 值不会阻止 PMIC 的任何功能、我很乐意忽略此问题、并继续讨论我们在尝试启动时看到的与 PMIC 超时有关的 I2C 问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    电源正常仅为开漏、因此无法驱动高电压。 因此、我认为如果没有上拉电阻器、它不能设置为高电平。

    但在任何情况下、它都不会在内部使用、只要系统不依赖于 POWERGOOD 状态、就可以安全地忽略它。 它的唯一功能是向系统指示是否存在电源故障。 如果 POWERGOOD 输出为低电平、PMIC 运行将不受影响。

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

    关于 PMIC 模型、我们放置了 TPS6590378 PMIC、而不是 TPS6590376 PMIC。  

    XXXX378是否具有与 XXXX376不同的 I2C 地址?  这可能会解释控制台日志中的一些协议问题...

    谢谢!

    Jeff

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

    它们具有相同的 I2C 地址-实际上、唯一的变化是断电序列。 DDR 禁用在序列中被更早地移动、第二个序列时隙从500us 扩展到1ms。 因此、由于从"0376"更改为"0378"、我不会期望您的系统出现任何功能差异。

    我对软件方面不太熟悉、但我在该日志中看不到任何看起来像特定错误的内容、只是缺少通信。 您是否曾尝试对 I2C 线路进行范围界定、以查看是否获得有效的 I2C 数据包? 这可能会提示它是软件问题还是硬件/PMIC 问题。

    此致、
    Karl
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢 Karl! I2C 总线上的电压似乎存在问题... 对于 SCL、3.3V;对于 SDA、仅1.8V。 它们都应该可能为0..3.3V。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    由于加载第二个引导加载程序时出现 I2C 超时错误、我们无法直接引导至 Linux。

    我们发现 I2C1 SDA 线为1.2V、SCL 线为3.3V。 两个信号都具有高达3.3V 的2.2K 上拉电阻器-电路的这一部分与参考设计相同、并且对这些网络的布线没有进行任何更改。 PMIC 是否可以保持 SDA 电压下降? 是否有人看过 与 TPS6590378类似的内容?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们已经解决了 I2C 问题。 事实证明、我们的晶圆厂组装了 U4。