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.

[参考译文] 问题:SK-AM62-LP:关于将同一内核的多个 RPRC 文件合并为单个二进制文件的工具

Guru**** 2644745 points

Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1587775/re-sk-am62-lp-regarding-tool-to-combine-multiple-rprc-file-from-same-core-into-a-single-binary

Thread 中讨论的其他器件:UNIFLASH

MCAL _SitaraMPU_10.01.00.03

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

    您好 Pradeep、

    请告诉我、当您执行 FLS_init 时、是否确定在文件 Fls_NOR_Device.h 文件中定义正确的闪存参数?

    这是从闪存参数获取的位置、还请参考文件 FLs_cfg.c 文件与我共享时钟、分频器、.blocksize 和其他值?

    我想从相关的线程,你在读取器件 ID 和制造 ID 时遇到了问题.

    此致、

    Vaibhav

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

    尊敬的 Vaibhav:

    我在线程中共享了 FLS xdm。

     e2e.ti.com/.../3326.Fls.zip

    请查找生成的源和包含文件夹

    e2e.ti.com/.../Fls_5F00_src.zip

    e2e.ti.com/.../Fls_5F00_include.zip

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

    您好 Pradeep、

    我希望您通过以下更改进行测试。

    e2e.ti.com/.../MCAL-_2D00_-QSPI-NOR-FLASH-_2D00_-W25Q128_2800_1_2900_.pdf

    请注意、以上内容适用于 W25Q128、我知道您使用的是 W25Q32JW、因此您只需在附加 PDF 上进行以下更改:

    • 将 NOR_SIZE 和 NOR_NUM_4K_SECTORS 分别更改为 4MB 和 1024。
    • 将 NOR_DEVICE_ID 更改为 0x6016。 请从数据表中进行一次验证、以检查器件 ID
    • NOR_4K_sect_BOT_END_OFFSET 至 0x3FFFFF。

    请使用这些更改和更新进行测试。

    此致、

    Vaibhav

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

    你好、 Vaibhav Kumar 、

    但在我们使用的相同配置下、它使用 SBL

    但是为什么只有在我们使用 BM 而不是 SBL 时、才会导致问题。

    此致、

    Pradeep R

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

    你好、 Vaibhav Kumar 、

    [引用 userid=“531612" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1587775/re-sk-am62-lp-regarding-tool-to-combine-multiple-rprc-file-from-same-core-into-a-single-binary/6118061

    我希望您通过以下更改进行测试。

    MCAL - QSPI NOR 闪存 — W25Q128 (1).pdf

    请注意、以上内容适用于 W25Q128、我知道您使用的是 W25Q32JW、因此您只需在附加 PDF 上进行以下更改:

    • 将 NOR_SIZE 和 NOR_NUM_4K_SECTORS 分别更改为 4MB 和 1024。
    • 将 NOR_DEVICE_ID 更改为 0x6016。 请从数据表中进行一次验证、以检查器件 ID
    • NOR_4K_sect_BOT_END_OFFSET 至 0x3FFFFF。

    请使用这些更改和更新进行测试。

    [/报价]

    我们已经对上述变化进行了调整。

     仅当我们使用启动管理器时、闪存初始化才会导致问题  

    system_init();
    BOARD_INIT ();
    /* Drivers_open();
    board_driversOpen ();*/

    您能否查看前面注释中分享的配置和生成的代码。

    此致、

    Pradeep R

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

    您好 Pradeep、

    [引述 userid=“551053" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1587775/re-sk-am62-lp-regarding-tool-to-combine-multiple-rprc-file-from-same-core-into-a-single-binary/6118231

    但在我们使用的相同配置下、它使用 SBL

    但是为什么只有在我们使用 BM 而不是 SBL 时、才会导致问题。

    [/报价]

    请坚持使用 SBL 而不使用您的 BM 的内容。 这意味着请坚持您所做的原始更改。

    在配置前面、我看不到需要注意的任何其他事项。

    这就是我们将要做的。

    它是一个简单的分步过程、如果您可以按照说明操作、则调试起来会更容易。

    1. 当您执行 FLS Init、并转至读取制造商和器件 ID 的函数时、然后暂停/放置一个断点并获取 OSPI 寄存器值:
      1. 使用 SBL 运行时、在上述时间点停止并获取 OSPI 寄存器转储。
      2. 使用 BM 运行时、以相同的方式获取 OSPI 寄存器转储。
      3. 通过以下常见问题解答来比较这两个 OSPI 寄存器转储: e2e.ti.com/.../faq-am62x-am62ax-am62d-q1-am62p-am62l-am64x-am243x-compare-ospi-registers
    2. 与我分享执行 python 脚本的结果。

    我很期待这件事。

    谢谢、

    Vaibhav

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

    尊敬的 Vaibhav:
    请找到随附的 dump1.txt((Fls_Init 成功)、Dump2.txt((Fls_Init 失败)和 Results.png(比较输出)。

    e2e.ti.com/.../dump1.txt

    e2e.ti.com/.../6562.dump2.txt

    如果您需要任何其他信息、请告知我们。

    BR、
    Shubham

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

    您好、

    System_init ();
    BOARD_INIT ();
    /* Drivers_open();
    board_driversOpen ();*/

    您能告诉我为 SBL 调用的一组函数吗?对于您的自定义 BM、您能不能这样说?

    我认为在这两种情况下都调用了 FLS_init。 请记下被调用的函数集、我想看看是否有区别。 此外、在使用 SBL 时、您是否在 example.syscfg 中定义了闪存参数和 OSPI 参数? 我相信不会

    同时、我将回顾 Shubham 所附的值。

    此致、

    Vaibhav

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

    你好、 Vaibhav Kumar 、

    我们使用 TI 提供的相同 SBL、但仅根据我们的闪存(QSPI NOR 芯片)进行调整。

    根据 TI SBL、此处不调用 FLS Init、不使用 FLS 驱动程序。 但调用了 OSPI init。 在调试时、我们发现 TI SBL 将调用 OSPI Direct 以从闪存读取内容并复制到 DDR。 syscfg 由自定义闪存参数组成。

    但就 BM + BL 而言、我们在 BM 启动之前与 TI 进行了讨论、TI 建议我们使用我们的 BM 代替 SBL、并根据要求进行调整。

    因此、在我们的 BM 中 、我们使用了相同的 SBL SYSCFG 文件、并在启动期间调用了上述函数、进而调用 OSPI init。

    system_init();
    BOARD_INIT ();
    /* Drivers_open();
    board_driversOpen ();*/

    为什么我们在这里评论 Drivers_open() 和 Board_driversOpen();因为当 调用 Drivers_open 时、我们在过去的会议中与 TI 讨论了这一点时、闪存区域不再可访问。 他们建议我们继续这样做

    在 BM 中、我们不使用 FLS 驱动器。 我们需要闪存区域来复制 使用 uninflash 工具刷写的 BL 映像内容。

    当 Control 变为 BL 时、我们在 BL 中使用 FLS 驱动器。 因此调用 FLS _Init、我们面临着 FLS 初始化失败的问题。

    我们的 BL 还包含 SYSCFG 文件、这些文件也可用于配置以太网和闪存参数。 但不包含 与 OSPI init 相关的 syscfg

    现在,你能让我们知道我们应该如何处理在这种情况下的闪存驱动程序

    此致、

    Pradeep R

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

    您好 Pradeep、

    请允许我对你上面写的描述发表评论。

    谢谢、

    Vaibhav

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

    你好、Vaibhav、

    e2e.ti.com/.../7181.Dump2.txt

    Regardse2e.ti.com/.../7181.Dump1.txt

    Pradeep R

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

    您好 vaibhave2e.ti.com/.../4118.Dump2.txt

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

    您好 Pradeep、

    您可以在此处分享团队邀请吗? 我可以直接加入。

    谢谢、

    Vaibhav

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

    尊敬的 Vaibhav:  

    当然、我会发送会议邀请

    您能给我提供您的邮件 ID 吗

    此致、

    Pradeep R

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

    尊敬的 Vaibhav:  

    e2e.ti.com/.../WorkingCase.txt e2e.ti.com/.../NotWorkingCase.txt

    此致、

    Pradeep R

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

    通话结束:

    堆叠 1:

    驱动器打开、电路板驱动器打开

    手动、
    第 7 位(DAC 位)设置为 1 ->符合预期。
    Memcopy(dest、0x60000000 + flashhoffset,要读取的字节数)


    跳转自 CPU ->硬件->重置此项-> INDAC FLS 示例->工作(相同)
    再也不会来这里了

    堆栈 2:

    FLS 初始化
    它可以...(相同)

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

    您好、

    我看到了一封关于您想要确认 MCAL FLS 对 SBL 的依赖关系的电子邮件。

    您可以测试 appotronics 的 MCAL INDAC 示例、该示例适用于您的设置。 但是、请按以下方式执行。

    使用 python 脚本进行刷写、但如果您的 SOC 是 HS FS 类型、则不传递 uart_uniflash.py 脚本、而是传递 uart_bootloader.py 脚本并提供 default_sbl_uart_hs_fs.cfg 文件的路径。

    现在、完成后、您将看到 SoC 已初始化、您将根据刷写的映像看到基本日志。

    此时、连接到 R Core、然后重置、并加载 appotronics 给出的 MCAL FLS INDAC 示例、让我知道这是否成功。

    我要求您执行此操作的原因是为了可以在不依赖 SBL 的情况下测试 MCAL FLS Init。 在 SBL UART 的 example.syscfg 中没有 OSPI 和闪存的配置。 因此、MCAL FLS INDAC 示例将完全独立测试、不存在任何依赖项。

    请告诉我相同的结果。

    此致、

    Vaibhav

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

    尊敬的 Vaibhav:

    我要求您执行此操作的原因是、可以在没有 SBL 依赖的情况下测试 MCAL FLS Init。 在 SBL UART 的 example.syscfg 中没有 OSPI 和闪存的配置。 因此、MCAL FLS INDAC 示例将完全独立测试、不存在任何依赖关系。

    如您所述、在 SBL UART 的 example.syscfg 中没有 OSPI 和闪存配置。在 上述闪存相关内容之后、我们收到了 Appotronics 的 MCAL INDAC 示例问题。

    请查找附件:

    在这里、我们从 UART 模式引导、因为 default_sbl_uart_hs_fs.cfg 中没有任何闪存内容。

    BR、

    Shubham

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

    嗨、Shubham、

    我已发送跟进电子邮件、请检查并确认。

    谢谢、

    Vaibhav