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.

[参考译文] Linux/DRA722:J6E 在 SPL 中引导完成

Guru**** 2568585 points
Other Parts Discussed in Thread: DRA722

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/582534/linux-dra722-j6e-boot-up-stucking-in-spl

器件型号:DRA722

工具/软件:Linux

您好!

  我们拥有自定义子板 +自定义 DRA722 CPU 模块板 ,带有 uboot 2014.07 ,采用 glsdk 7.03.00.3,但我们的某些 CPU 模块通过 MP 行进行筛选是 坏的。

由于这些 CPU 模块 无法成功引导, 因此引导日志只打印2行。

U-Boot SPL 2014.07 (2016年12月8日- 15:53:31)
DRA722-GP ES1.0 

因此,我在 SPL 代码中添加了一些调试消息, 我发现 SPL 卡在 读取 PMCTRL_ISOCLK_STATUS 中,如下所示, ISOCLK_STATUS 始终为零 ,并停留在 while 循环中。  

arch/arm/cpu/armv7/omap5/dra7xx_iodelay.c
if (!wait_on_value (PMCTRL_ISOCLK_STATUS_MASK、PMCTRL_ISOCLK_STATUS_MASK、
(u32 *)(* prcm)->PRM_IO_pmctrl、LDELAY) 

  您能给我们一些调试的方向吗?  (这应该是硬件问题,但我们想知道哪个部分是 NG )

最棒的

Andy

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

    尊敬的 Andy:

    您能否发布 与 RTC 模块相关的所有引脚的原理图部分?

    此致、

    STAN

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

    查看以下 wiki 页面是否会显示在"Help"(帮助)中:

    processors.wiki.ti.com/.../Debug_Tips_for_DM81xx_Boot_Fail
    processors.wiki.ti.com/.../AM335x_board_bringup_tips

    processors.wiki.ti.com/.../AM57xx_Schematic_Checklist
    processors.wiki.ti.com/.../AM57x_Hardware_Design_Guide
    processors.wiki.ti.com/.../Hardware_Design_Checklist
    processors.wiki.ti.com/.../Sitara_Layout_Checklist
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Andy:
    您是否设法解决了您的问题?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Stan、

    此问题仍在处理中。   我们连接相对电路以供您参考。

    我们已经测量到 RTC_OSC_XI_CLKIN32为高电平并且 RTC_ISO 在不良的 J6E CPU 模块上是正常的。

    我们应该提前检查哪一部分?

    最棒的

    Andy

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

    Andy、

    请重新附加图像。 在此论坛中、粘贴到窗口不起作用。

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

    您好、Stan、

        是否足以进行调试?

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Andy:
    我错误地认为这与涉及 RTC_ISO 未正确连接的其他问题有关。 在您的情况下、RTC_ISO 正常。
    但是、请查看您是否在 SPL 中实施了以下权变措施:

    隔离前必须为 i890 MMC1 IO 和 PBIAS 加电
    关键性:中等
    说明:如果 MMC1,TRM“隔离要求”一节中所述的 IO 隔离可能会失败
    IOS 和 PBIAS 未加电。
    解决方法:在启动隔离序列之前、为 MMC1 IO 和 PBIAS 加电。 这是可以的
    通过设置 CTRL_CORE_CONTROL_PBIAS[27] SDCARD_BIAS_PWRDNZ 来完成
    将 CTRL_CORE_CONTROL_PBIAS[26] SDCARD_IO_PWRDNZ 位更改为1。
    受影响的修订版本:SR 1.0、1.1、2.0


    TRM 部分的隔离要求也对此进行了说明。

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

    我已经检查了源代码、发现这两个位最初是1。
    在"arm/include/asm/sar-omap5/omap.h"文件中、
    #define SDCARD_BIAS_PWRDNZ(1 << 27)
    #define SDCARD_PWRDNZ(1 << 26)

    应该是硬件问题、但我们仍然需要知道哪个部分是 NG。
    我期待你的答复,谢谢。

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

    更新了。
    很抱歉,我有什么问题。 此文件(OMAP.h)无法检查寄存器值是否正确。
    因此、我使用 CCS 工具检查您建议的寄存器值。
    SDCARD_BIAS_PWRDNZ 和 SDCARD_IO_PWRDNZ 位已设置为1。

    此致、
    鲍伊·任
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    任您好、
    好的、谢谢。 您正在"等待"挂起期间读取它们、对吧?

    ISOCLKOUT 信号从一个 I/O 端口传输到下一个 I/O 端口、直到它到达寄存器位。 请参阅图3-97。 TRM 中的 I/O 焊盘菊花链配置。
    如果只有一个焊盘发生故障、ISOCLKOUT 将显示故障。 除了某些焊盘缺少电源外、我不记得其他原因(例如、 vddshv[1:9]电源轨)。
    我会检查所有电源、使其尽可能靠近芯片。 如果一切正常、我将删除 SW 'wait'函数以允许其启动、然后检查所有接口(每个电源轨至少一个)以查看哪些(IF)不工作、从而查看哪个电源轨发生故障。

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

    添加更多调试消息后、我在下面的源代码中找到了这个 CPU 模块桩模块。
    ===================================================================================================
    clrsetbits_le32 (((*Ctrl)->Ctrl_core_SMA_sw_0、CTRL_Isarit_mask、
    隔离<< CTRL_Sar隔离_SHIFT);
    ===================================================================================================
    在 TRM 部分的第5400页的隔离要求(第18.4.6.1.6节)中。 失败步骤为"4. 向 CTRL_CORE_SMA_SW_0[2]隔离位写入1 "
    您知道是什么原因导致了这种情况吗?

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

    尊敬的 Bowei Ren:

    我知道您有几个相同的电路板、其中一些电路板发生故障、另一些电路板正常工作、因此除了电源故障之外、我不记得其他问题。 其中包括破裂的焊料、破裂的过孔或轨迹、不良的 PMIC 组件(电感器或类似器件)。 错误的上电序列(OTP 错误)也可能导致问题。

    我建议您检查所有电源轨的加电序列、使其尽可能靠近 SoC。 但起始点应为 vddshv8、它为 MMC1 IO 供电。 根据勘误表、这可能会导致隔离失败。 此外、值得检查 PMIC 的 OTP。

    此致、

    STAN