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.

[参考译文] TDA4VM:在 TDA4VM J721E EVM 上配置 A72内核频率所需的帮助

Guru**** 2539500 points
Other Parts Discussed in Thread: TDA4VM

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1399755/tda4vm-assistance-required-for-configuring-a72-core-frequency-on-tda4vm-j721e-evm

器件型号:TDA4VM

工具与软件:

尊敬的 TI 团队:

我使用 TDA4VM J721E EVM、需要将 A72内核频率配置为1.2GHz 以进行测试。 为了实现这一点、我执行了 Processor SDK RTOS 文档中概述的步骤、该文档 在此处提供

我执行的步骤如下:

1.修改了中 sbl_soc_cfg.h 中的下列宏 /packages/ti/boot/sbl soc / K3/sbl_soc_cfg.h
#define SBL_MPU1_CPU0_FREQ_Hz (1200000000)
#define SBL_MPU1_CPU1_FREQ_Hz (1200000000)

`m`命令"make -s allcores BOARD=j721e_evm `"重新编译 SBL /packages/ti/build`目录。
3.从`复制生成的`sbl_mmcsd_img_mcu1_0_release.tiimage` /packages/ti/boot/sbl/binary/j721e_evm/mmcsd/bin`到 SD 卡、即`tiboot3.bin`。
4.从`复制了` tifs.bin `文件 /packages/ti/drv/sciclient soc / V1/`至 SD 卡。
5.已在 EVM 中安装 SD 卡并在电路板上通电。

遗憾的是、EVM 无法引导、在 UART 控制台上未观察到输出。

您能否告知是否需要执行其他步骤或我采取的方法有问题? 非常感谢提供有关配置和测试 A72 CPU 频率的任何指导或参考文档。

感谢您的帮助。

此致、
Amar

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

    尊敬的 Amar:

    以上步骤是正确的。  

    您能告诉我们您希望看到哪个 UART 实例的输出吗? 此外、上述文章未澄清正在 A72内核上加载的操作系统。 您能详细介绍一下您要尝试执行的操作吗?

    谢谢。

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

    您好 Praveen、

    感谢您的答复。

    我将使用第一个 UART 实例(ttyUSB0)、我们通常在其中观察 U-Boot 日志。 我选择 ttyUSB0、因为我希望 U-Boot 以更新的频率启动。

    为了提供一些背景信息、让我解释一下我们的目标。 我们将在定制 RTOS 上运行一组专有基准测试应用程序。 这些测试是在各种工作频率下对所有候选测试进行的:

    1. 测试域的标准频率。
    2. 所有候选考试共用的最大频率。
    3. 每个候选人支持的最大频率。

    我们已选择 J7作为我们的候选项之一、因此我们需要在特定频率下配置 A72内核。 我们已经在2GHz (默认)下测试了我们的应用、现在我们需要在1GHz 和1.2GHz 下测试这些应用。

    此致、
    Amar

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

    尊敬的 Amar:

    感谢您的讲解。

    SBL 不使用主 UART、而是使用 MCU UART 实例、因此建议将 USB 调试电缆连接到端口 USB/串行调试 连接器、如下所示。  

    谢谢。

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

    您好 Praveen、

    感谢您的答复。

    我能够获得 MCU UART 的第二个实例的 SBL 输出、但引导过程失败。 控制台显示以下输出:

    SBL 修订版本:01.00.10.01 (2024年8月13日- 13:35:02)
    TIFS ver: 9.1.2--v09.01.02 (Kool Koala)

    SD 引导-文件打开失败

    其他控制台均不显示任何输出。

    我不确定为什么会发生此故障。 以下是 SD 卡引导分区中的文件列表:

    2024年08月20日06:31 AM 304,646  tiboot3.bin
    2024年08月13日10:19 am 1,050,940 tispl.bin
    2024年08月13日10:19 am 1,263,112 u-boot.img
    2024年08月13日10:19 AM 269,030  sysfw.itb.
    2024年01月25日09:04 AM 62.     uenv.txt
    2022年03月23日11:19 PM 0      uenv.txt.base
    2022年03月23日11:19 PM 120    uenv.txt.disp_sharing
    2022年03月23日11:19 PM 101    uenv.txt.jailhouse
    2022年03月23日11:19 PM 54.     uenv.txt.psdkra
    2022年03月23日11:19 PM 15.     修补程序版本
    2024年08月20日06:32 AM 263,083  tifs.bin
    1980年01月01日12:00 am 131,072  uboot.env

    如前一条消息所述、我的目标是更新 SBL 中的 A72内核频率、然后引导 U-Boot。 我预计使用更新的 SBL、SD 卡上的现有 U-Boot 会成功引导。

    我在这里遗漏了什么吗? 是否有任何介绍此场景的文档?

    此致、
    Amar

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

    您好 Praveen、

    我遇到下面的链接、我认为我理解 SBL 无法启动的原因:
    链接

    如第8.2.2节"RTOS 引导加载程序"所述、当 SoC 上的所有内核都运行 FreeRTOS 并需要名为"app"的引导文件时、将使用 tiboot3.bin (SBL)和 tifs.bin 的组合。 这不适用于我们的场景。

    由于我们的自定义 RTOS 从 U-Boot 引导、因此我们应遵循第8.2.3节"Linux 引导加载程序"中的步骤。 这意味着需要结合使用 tiboot3.bin (SPL)、tispl.bin 和 uboot.img。

    不过、我不确定在哪里可以更新 U-Boot SPL (tiboot3.bin)内 MCU R5F Core0的 A72内核频率。 TI 在线文档种类繁多、难以查找相关信息。

    您能告诉我在 SPL 中更新 A72内核频率的位置、或者告诉我到相应的文档吗?

    此致、

    Amar

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

    您好 Praveen、

    在`` k3-j721e-r5-common-proc-board.dts`中所示更新`Dassigned-clock-rate`后、我可以使用 μ`获得`ev_A72SS0_arm_CLK_CLK 为1200000000 k3conf 转储时钟4 来自 Linux 的 μ`命令:

    a72_0:a72@0{
    compatible ="ti、am654-rproc";
    REG =<0x0 0x00a90000 0x0 0x10>;
    电源域=<&K3_PDS 61 TI_SCI_PD_Exclusive>
    <&K3_PDS 202 TI_SCI_PD_Exclusive>
    <&K3_PDS 4 TI_SCI_PD_Exclusive>;
    RESET =<&K3_RESET 202 0>;
    时钟=<&K3_CLKS 61 1>;
    分配的时钟数=<&K3_CLKS 202 2>、<&K3_CLKS 61 1>;
    分配的时钟速率=< 1200000000 >、<200000000>;
    ti、sci =<&dmsc>;
    ti、sci-proc-id =<32>;
    ti、sci-host_id =<10>;
    bootph-pre-ram;
    };

    我有几个问题:
    1.上述配置是在 Linux 引导过程中应用的还是从 U-Boot SPL 本身应用的?
    2.由于我们仅配置`a72@0`(内核0)、因此该配置是否也适用于内核1?

    此致、

    Amar

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

    尊敬的 Amar:

    [报价 userid="568850" url="~/support/processors-group/processors/f/processors-forum/1399755/tda4vm-assistance-required-for-configuring-a72-core-frequency-on-tda4vm-j721e-evm/5367508 #5366508"]

    其他控制台均不显示任何输出。

    我不确定为什么会发生此故障。

    [/报价]
    正如我之前的消息所述、我的目标是更新 SBL 中的 A72内核频率、然后启动 U-Boot。 我预计使用更新后的 SBL、SD 卡上的现有 U-Boot 将成功引导。

    我不确定您为什么要使用其他 SPL+uBoot 二进制文件来应对 SBL。 您能解释一下吗? 我们无法混合和匹配不同的引导加载程序。

    另外、 请说明为何需要在项目中使用 SBL 而不是 SPL+uBoot。 更新 A72内核频率不需要 SBL。 您似乎已经弄清楚了。

    1. 上述配置是在 Linux 启动过程中应用的还是从 U-Boot SPL 本身应用的?[/QUOT]

    这取决于您修改了哪个器件树文件、是 U-Boot 内核还是 Linux 内核。

    由于我们只配置`a72` 0@(内核0)、此配置是否也适用于内核1?

    配置更改将应用于所有内核(如果已启用)。

    谢谢。

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

    您好 Praveen、

    感谢您的反馈。

    关于为何使用 SBL 而不是 SPL+U-Boot、我最初认为 SBL 是修改 A72内核频率所必需的、并且不了解 J7上的两种不同的引导加载程序机制。 但是、我现在已经意识到、我可以 使用 SPL+U-Boot 引导流程本身、并且还找到了如何使用 SPL+U-Boot 更新 A72内核频率。

    作为参考、我修改了 arch/arm/dts/k3-j721e-r5-common-proc-board.dts 在 uboot 中。

    感谢您的帮助。

    此致、
    Amar