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.

[参考译文] J784S4XEVM:将 UART3配置为控制台会导致 SPL 失败

Guru**** 2392905 points
Other Parts Discussed in Thread: TDA4AP-Q1, J784S4XEVM

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1495830/j784s4xevm-configuring-uart3-as-console-causes-spl-to-fail

器件型号:J784S4XEVM
Thread 中讨论的其他器件:TDA4AP-Q1

工具/软件:

我们使用的是 Processor SDK Linux 09_01_00_06。
我们需要使用 UART3作为我们基于 J784S4XEVM 的定制电路板上的控制台端口、并使用了 TDA4AP-Q1 SoC。 修改了 u-boot 器件树文件和电路板 CLK-data.c dev-data.c  文件按照中的说明进行  了修补、在进行了一些其他更改后、我们能够调试 SPL (tiboot3.bin)引导到调用 ns16550驱动程序探测器的位置  ns16550_init() 但随后器件将无响应  ns1655.c 指定 serial_in_shift() 第89行、并检查 UART3寄存器存储器、显示 LSR 寄存器为0  


为了消除定制电路板的任何问题、我对 EVM u-boot 器件树进行了相同的更改、以将控制台从 UART 8更改为 UART3、如下所示:
e2e.ti.com/.../diffs_5F00_from_5F00_uart8_5F00_boot.diff

我引导 J784S4XEVM 时遇到了相同的问题、即 SPL 引导在同一代码行失败。
我比较了 UART3和 UART8的 UART 寄存器、并发现 UART8的 LSR 寄存器保持了 UART3的预期值(0x60)、其中该值为0x00。
查看所有主 UART 的寄存器时、我注意到 UART0-UART3在寄存器中都是零、其中 UART4-UART9都如下所示:


我查看了 TRM 中的连接矩阵表3-4、 第143页上的表表明、对于 MCU_R5FSS0_CORE0和1、每个主 UART 都应有一个连接、 但我还在第173页的表3-5中看到 PDMA_UART_G20显示的模式与我在具有 PDMA_UART_G20连接的 UART 寄存器中看到的模式类似、但我不理解 UART9关系。

我希望您可以帮助我确定需要执行什么操作才能使 UART 3正常工作、我的问题是否与某些外设防火墙设置有关?
提前感谢您的帮助。
此致、
Bruce  

当我在 CCS 中的第 89行被停止时的一位额外信息  ns1655.c  指定  serial_in_shift()  我进入或结束、调试会话会 "崩溃"并显示以下内容:

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

    您好 Bruce、

    我已将您的 E2E 分配给专家工程师、他们将能够帮助您解决问题。

    谢谢、

    Neehar

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

    经过进一步调查、我认为提供给我添加 UART3时钟的补丁是不正确的、尤其是因为 UART3电源由 LPSC 44控制、LPSC 44未添加到原始补丁中的 dev-data.c 中。 当我按照以下补丁中的方式更改 dev-data.c * clk-data.c 时、我可以克服在中的原始问题  ns1655.c  指定  serial_in_shift() 第89行。
    e2e.ti.com/.../uart3_5F00_dev_5F00_and_5F00_clk_5F00_diffs.txt

    不幸的是、由于超时(ret =-110)、我现在在第230行 k3_sysctrler_start ()的 k3_system_controller.c 中失败。

     

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

    您好 Bruce、

    因为我上星期不在办公室,所以很抱歉回复太晚了。

    clk-data.c 中的更改似乎没问题。

    但是、dev-data.c 中似乎存在问题

    我是一位 LSO 很抱歉我之前给出了不正确的 dev-data.c。

    我附加了下面的 dev-data.c 补丁以应用于 Processor SDK Linux 09_01_00_06。

    e2e.ti.com/.../dev_5F00_data.patch

    如果您遇到问题、请告诉我。

    此致

    Gokul

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

    谢谢 Gokul。 今天上午我也发现了指数的问题,但我还没有测试. 我会告诉您结果。

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

    谢谢 Gokul、我能够使用此补丁引导到 Linux。