ZHCACZ9A August   2023  – September 2024 AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM625SIP , AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM62P , AM62P-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 引言
  5. 安装 SDK
  6. 为定制电路板配置 SDK
  7. 启动 U-Boot 电路板端口
    1. 4.1 器件树简介
    2. 4.2 最小配置的功能
    3. 4.3 准备定制板级配置文件
    4. 4.4 初始器件树修改
    5. 4.5 构建 U-Boot 二进制文件
    6. 4.6 U-Boot 部署说明
  8. 扩展定制电路板器件树
    1. 5.1 器件树配置
    2. 5.2 描述节点中的外设
    3. 5.3 修改器件树配置
  9. 引导 Linux 内核
    1. 6.1 内核引导概述
    2. 6.2 内核部署说明
  10. 工具和调试
    1. 7.1 内核调试跟踪
    2. 7.2 OpenOCD 调试
  11. 未来的工作
  12. 总结
  13. 10参考资料
  14.   修订历史记录

准备定制板级配置文件

可根据以下步骤设置用于开发的定制电路板器件树和配置文件。不妨参考 AM62x 器件树图,了解正在创建的器件树如何装入现有结构中。

  1. 复制和重命名所需的电路板器件树。

    使用以下命令创建所提供器件树的重命名副本。如果安装的 SDK 中不存在所提供的器件树,则可以在参考部分中下载这些器件树。

    $ cp TI_U_BOOT/arch/arm/dts/k3-am625-minimal.dts TI_U_BOOT/arch/arm/dts/k3-am625-<boardname>.dts
    $ cp TI_U_BOOT/arch/arm/dts/k3-am625-r5-minimal.dts TI_U_BOOT/arch/arm/dts/k3-am625-r5-<boardname>.dts
    $ cp TI_U_BOOT/arch/arm/dts/k3-am625-minimal-u-boot.dtsi TI_U_BOOT/arch/arm/dts/k3-am625-<boardname>-u-boot.dtsi

    这些命名更改需要反映在 k3-am625-r5-<boardname>.dts 中的 #include 预处理器指令中。

    // in k3-am625-r5-<boardname>.dts - #include "k3-am625-minimal.dts" - #include "k3-am625-minimal-u-boot.dtsi" + #include "k3-am625-<boardname>.dts" + #include "k3-am625-<boardname>.dtsi"
  2. 为 DDR 配置生成器件树。

    U-Boot 用于 DDR 初始化的 DDR 配置包含在使用 TI 的 SysConfig 工具生成的器件树中。启动 SysConfig 工具并登录 myTI 帐户后,将“Software Product”字段设置为“DDR Configuration for AM64x, AM625, AM623, AM62Ax, AM62Px”,并将“Device”字段设置为“AM62x”。启动程序以加载 DDR 配置工具。您可以在此处修改 DDR 设置以匹配硬件规格。为防止可能导致引导失败的信号完整性问题,建议将 DDR 频率设置为 667MHz (1334MTs)。这是 DLL 开启时 DDR4 支持的最慢速度。DDR 频率在 SysConfig DDR 工具的“Memory Frequency (MHz)”字段中设置。完成电路板启动后,应根据 DDR 器件规范生成新的 DDR 配置。有关此工具的完整指南,请参阅 SysConfig DDR 配置自述文件。需要包含的生成文件名为 k3-am62x-ddr-config.dtsi。下载此文件并使用以下命令重命名此器件树,然后将其放置在 SDK U-Boot 存储库中。

    $ cp k3-am62x-ddr-config.dtsi TI_U_BOOT/arch/arm/dts/k3-am62x-<boardname>-ddr4-<#MTs>.dtsi

    替换 k3-am625-r5-<boardname>.dts 中的以下行。

    - #include "k3-am62x-sk-ddr4-1600MTs.dtsi" + #include "k3-am62x-<boardname>-ddr4-<#MTs>.dtsi"
  3. 为定制电路板设置 Binman。

    Binman 用于生成 U-Boot 二进制文件。使用以下命令复制现有的 EVM binman 器件树文件,并为定制电路板重命名该文件。

    $ cp TI_U_BOOT/arch/arm/dts/k3-am625-sk-binman.dtsi TI_U_BOOT/arch/arm/dts/k3-am625-<boardname>-binman.dtsi

    在这个新创建的文件中,进行以下修改以使用自定义器件树。

    - #define SPL_AM625_SK_DTB "spl/dts/k3-am625-sk.dtb"
    + #define SPL_AM625_SK_DTB "spl/dts/k3-am625-<boardname>.dtb"

    将这个新文件包含在 k3-am625-<boardname>-u-boot.dtsi 中。

    - #include "k3-am625-sk-binman.dtsi" + #include "k3-am625-<boardname>-binman.dtsi"
  4. 将器件树集成到构建流程中。

    通过在 TI_U_BOOT/arch/arm/dts/Makefile 中添加以下行,新创建的器件被添加到 Makefile 中。

    dtb-$(CONFIG_SOC_K3_AM625) += k3-am625-sk.dtb \
    			      k3-am625-r5-sk.dtb \
    			      k3-am62sip-r5-sk.dtb \
    			      k3-am625-beagleplay.dtb \
    			      k3-am625-r5-beagleplay.dtb \
    			      k3-am625-verdin-wifi-dev.dtb \
    			      k3-am625-verdin-r5.dtb \
    			      k3-am625-phyboard-lyra-rdk.dtb \
    			      k3-am625-r5-phycore-som-2gb.dtb \
    			      k3-am62-lp-sk.dtb \
    			      k3-am62-r5-lp-sk.dtb \
    +			      k3-am625-<boardname>.dtb \
    +			      k3-am625-r5-<boardname>.dtb
  5. 设置配置片段。

    创建或修改将应用于现有 AM62x EVM 默认配置文件之上的两个配置片段,以更改 U-Boot 正在访问的器件树。应在 TI_U_BOOT/configs/ 中创建这些文件。如果您是按照节 3中的步骤操作,则这些文件已创建好。将下面的行添加到配置片段。

    am62x_<boardname>_r5.config

    CONFIG_DEFAULT_DEVICE_TREE="k3-am625-r5-<boardname>"
    am62x_<boardname>_a53.config
    CONFIG_DEFAULT_DEVICE_TREE="k3-am625-<boardname>" CONFIG_SPL_OF_LIST="k3-am625-<boardname>" CONFIG_OF_LIST="k3-am625-<boardname>"

现在已经在 U-Boot 中设置了定制电路板配置。