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/AM5728:在 AM5728 IDK 上引导 Linux。

Guru**** 2541740 points
Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/625873/linux-am5728-linux-booting-on-am5728-idk

器件型号:AM5728

工具/软件:Linux

您好,

 我正在尝试在 AM5728 IDK REV 1.3B 上刷写 Linux SDK。 我已从 http://www.ti.com/tool/PROCESSOR-SDK-AM57X 下载处理器 SDK 

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

    您在这里有什么问题?

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

    您好、Pavel、

    我要在 AM5728-IDK 上刷写 Linux,为此,我已从问题中提供的链接下载了 SDK。 但我无法引导 SDK 提供的预编译映像。

    我已使用 create-sdcard.sh 创建具有预编译二进制文件的 SD 卡。 提供的链接 www.ti.com/.../PROCESSOR-SDK-AM57X 是否正常工作、或者我是否需要下载一些适用于 AM5728-IDK 的其他 SDK。

    U-Boot SPL 2017.01-g9fd60700db (2017年6月28日- 19:55:57)
    DRA752-GP ES2.0
    尝试从 MMC1引导
    ,读取 uboot.env
    
    **无法从 mmc0:1读取"uboot.env"**
    使用默认环境
    
    读取 u-boot.img
    读取 u-boot.img 读取 u-boot.un.dt 选项
    读取 u-boot.dt
    匹配:
    am57xx-beagle-x15
    am57xx-beagle-x15-revb1
    am57xx-EVM-reva3
    am572x-idk
    am571x-idk
    正在读取 ubboot.env
    
    **无法从 mmc0:1读取"ubboot.env"**
    使用默认环境
    
    无法安装 ext2文件系统...
    SPL_LOAD_IMAGE_ext:ext4fs 安装错误- 0
    



    谢谢、
    M.Mahesh。

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

    您是否从以下位置下载并安装 ti-processor-sdk-linux-am57xx-evm-04.00.00.04-Linux-x86-Install.bin 文件?

    software-dl.ti.com/.../index_FDS.html

    AM572x IDK 支持此处理器 SDK Linux、请参阅以下 wiki 页面:

    processors.wiki.ti.com/.../Processor_SDK_Supported_Platforms_and_Versions

    当您通过 create-sdcard.sh 脚本创建具有预编译二进制文件的可引导 SD 卡时、您能否列出引导和 ROOTFS 分区中的确切文件?

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

    Pavel、

    是的、我安装了与您提到的链接相同的 SDK。

     在此链接中、在 AM572x 中未提及 processors.wiki.ti.com/.../Processor_SDK_Supported_Platforms_and_Versions REV 1.3B、您能建议 REV 1.3B 的任何替代方案吗?

    创建 SD 卡后、我在引导和 ROOTFS 中有以下文件

    引导- MLO、u-boot.img、uEnv.txt

    ROOTFS - bin、boot、dev 等、home、 include、lib、media、mnt、opt、 proc、run、sbin、srv、sys、 tmp、usr、var、www

    谢谢、
    M.Mahesh。

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

    [引用用户="Mahesh Medikonda10"]通过此链接 、processors.wiki.ti.com/.../Processor_SDK_Supported_Platforms_and_Versions REV 1.3B 未在 AM572x 中提及、您能否建议 REV 1.3B 的任何替代方案。[/引用]

    我可以在几个 e2e 线程上看到、旧版本的 PSDK 在 AM572x IDK rev 1.3B 上工作正常、因此我希望 PSDK4也能正常工作。

    您还可以使用 Linux-RT SDK 查看是否有任何差异:

    [引用 user="Mahesh Medikonda10">ROOTFS - bin、boot、dev 等、home、 include、lib、media、mnt、opt、 proc、run、sbin、srv、sys、 tmp、usr、var、www [/quotate]

    是否可以列出 Rootfs/boot/文件夹中的文件? 从您提供的引导日志中、该文件夹中似乎缺少正确的 AM572x IDK DTB 文件。

    此致、
    帕维尔

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

    您好、Pavel、

     SDCARD/rootfs/boot/中存在以下文件

    am571x-idk.dtb devicetree-uImage-am571x-idk-lcd-osd101t2587.dtb devicetree-zImage-am572x-EVM-jailhouse。dtb
    am571x-idk-lcd-osd101t2045.dtb devicetree-uImage-am571x-idk-PRU-Excl-uio.dTB devicetree-zImage-am572x-idk.dTB
    am571x-idk-lcd101t2587.dtb devicetree-uImage-am572x-EVM-jailhouse。dtb devicetree-zImage-am572x-idk-jailhouse。dtb
    am571x-idk-PRU-ex-uio.dtb devicetree-uImage-am572x-idk.dTB devicetree-zImage-am572x-idk-lcd-osd101t2045.dtb
    am572x-EVM-jailhouse.dtb devicetree-uImage-am572x-idk-jailhouse。dtb devicetree-zImage-am572x-idk-lcd-osd101t2587.dtb
    am572x-idk.dtb devicetree-uImage-am572x-idk-lcd-osd101t2045.dtb devicetree-zImage-am572x-idk-pru-ex-uio.dTB
    am572x-idk-jailhouse .dtb devicetree-uImage-am572x-idk-lcd-osd101t2587.dtb devicetree-zImage-am57xx-beagle-x15.dtb
    am572x-idk-lcd-osd101t2045.dtb devicetree-uImage-am572x-idk-PRU-Excl-uio.dTB devicetree-zImage-am57xx-beagle-x15-revb1.dtb
    am572x-idk-lcd101t2587.dtb devicetree-uImage-am57xx-beagle-x15.dtb devicetree-zImage-am57xx-evm-cam-mt9t111.dtb
    am572x-idk-pru-ex-uio.dtb devicetree-uImage-am57xx-beagle-x15-revb1.dtb devicetree-zImage-am57xx-evm-cam ov1065.dtb
    am57xx-beagle-x15.dtb devicetree-uImage-am57xx-evm-cam-mt9t111.dtb devicetree-zImage-am57xx-evm.dTB
    am57xx-beagle-x15-revb1.dtb devicetree-uImage-am57xx-evm-cam-ov1065.dtb devicetree-zImage-am57xx-evm-reva3-cam-mt9t111.dtb
    am57xx-evm-cam-mt9t111.dtb devicetree-uImage-am57xx-evm.dtb devicetree-zImage-am57xx-evm-reva3-camer-ov1065.dtb
    am57xx-evm-amon-ov1065.dtb devicetree-uImage-am57xx-evm-reva3-cam-mt9t111.dTB devicetree-zImage-am57xx-evm-reva3.dTB
    am57xx-evm.dtb devicetree-uImage-am57xx-evm-reva3-cam-ov1065.dtb uImage
    am57xx-evm-reva3-camm-mt9t111.dtb devicetree-uImage-am57xx-evm-reva3.dtb uImage-4.9.28-geed43d1050
    am57xx-evm-reva3-cam-ov1065.dtb devicetree-zImage-am571x-idk.dTB vmlinux-4.9.28-geed43d1050
    am57xx-evm-reva3.dtb devicetree-zImage-am571x-idk-lcd-osd101t2045.dtb zImage
    devicetree-uImage-am571x-idk.dtb devicetree-zImage-am571x-idk-lcd-osd101t2587.dtb zImage-4.9.28-geed43d1050
    devicetree-uImage-am571x-idk-lcd-osd101t2045.dTB devicetree-zImage-am571x-idk-pru-ex-uTbi-dtb
    

     谢谢、

    M.Mahesh

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

    您好、Mahesh、

    您能否先运行{PSDK}/setup.sh 脚本、然后运行{PSDK}/bin/create-sdcard.sh 脚本? setup.sh 脚本将调用 setup-uboot-env.sh 脚本、该脚本应将您的电路板检测为"am5-idk"

    processors.wiki.ti.com/index.php/Processor_SDK_Linux_Getting_Started_Guide
    processors.wiki.ti.com/.../Processor_SDK_Linux_Setup_Script
    processors.wiki.ti.com/.../Processor_SDK_Linux_create_SD_card_script

    您还可以共享您的 uEnv 文件吗?

    此致、
    帕维尔

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

    MLO 和 u-boot 也使用器件树。 u-boot/arch/arm/DTS 的内容是什么?

    Steve K.

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

    您好、Steve、

      我可以通过执行以下更改来启动 u-boot。

    diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
    INDEX e32989d.4ebcc2e 100644
    -- a/configs/am57xx_evm_defconfig
    + SPL+ b/configs/am57xx_evm_defconfig
    @@@@-13、7_gp_load_y=voltage_config_up_y_en_up_up_y=v_up_y_load_up_up_up_y=d_up_up_up_up_up_y=v_up_up_y_up_up_up_y=v_up_up_y_up_up_up_y_up_up_y=d_up_up_y_up_upp_load_up_up_up_y=v_up_up_up_up_up_y=d_up_up_up_
    
    
    
    
    
    
    
    
    

    但现在无法启动内核。

    U-Boot 2017.01-00319-gfe893f7-脏 污(2017年9月18日- 17:33:55 +0530)
    
    CPU:DRA752-GP ES2.0
    型号:TI AM5728 IDK
    电路板:未知(BeagleBoard X15?) 版本未知
    DRAM:2GiB
    MMC:OMAP SD/MMC:0、OMAP SD/MMC:1
    读取 uboot.env
    
    **无法从 mmc0:1读取"uboot.env"**
    使用默认环境
    
    I2C 芯片50:请求的 Alen 2与 CHIP OFFSET_len 1
    不匹配 SCSI:SATA link 0超时。
    AHCI 0001.0300 32插槽1端口3 Gbps 0x1不支持 SATA 模式
    标志:64位 NCQ stag pm led clo only pmp pio sagadopt part ccc apst
    扫描总线设备...
    找到0个器件。
    网络: 未设置。 验证第一个电子保险丝 MAC
    cpsw
    按任意键以停止自动启动: 0
    切换到分区#0,确定
    mmc0是
    在设备0
    上找到的当前设备 SD/MMC 正在读取 boot.scr
    **无法读取文件 boot.scr **
    读取 uEnv.txt
    574字节在4ms (139.6 KiB/s)内
    读取从 uEnv.txt 从
    mmc0导入环境...
    切换到分区#0、好
    的 mmc0是当前器件
    SD/MMC 在器件0
    上找到3725624字节在225ms (15.8MiB/s)内读取
    98557字节在50ms (1.9MiB/s)
    ###平展器件树状引脚在88000000使用
    0x88000000处的 FDT BLOB
    启动将器件树加载到8ffe4000、 结束8ffff0fc ... 确定
    
    启动内核...
    
    

    谢谢、

    M.Mahesh

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

    e2e.ti.com/.../0458.uEnv.txtHiPavel、

     即使遵循您建议的步骤、我也会看到相同的错误。

      随函附上 uEnv.txt FYR。

     我修改了 uEnv.txt、内容如下。

    bootargs=console=ttyO0、115200n8 root=/dev/mmcblk0p2 fdtfile=am572x-idk.dTB mem=128M rootwait
    bootcmd=MMC rescan;fatload MMC 0 0x82000000 zImage;fatload MMC 0 0x88000000 $fdtfile;bootz 0x82000000 - 0x88000000 rootcmd=boot
    

    谢谢、

    M.Mahesh

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

    我认为您应该使用"CONFIG_SPL_LOAD_FIT = y"选项、因为默认情况下在 am57xx_EVM_defconfig 中启用了该选项。 根据 u-boot 用户指南(以下链接)、您应该使用该默认配置文件为 AM572x IDK 构建 MLO/SPL 和 u-boot。 另外、请确保您具有:

    CONFIG_TARGET_AM57XX_EVM=y
    CONFIG_DEFAULT_DEVICE_TREG="am572x-idk"
    CONFIG_FIT = y
    CONFIG_SPL_LOAD_FIT = y
    CONFIG_ON_LIST="am57xx-beagle-x15 am57xx-beagle-x15-revb1 am57xx-evm-reva3 am572x-idk am571x-idk"

    processors.wiki.ti.com/.../Linux_Core_U-Boot_User's_Guide

    请尝试构建您自己的 MLO/SPL 和 u-boot、将这些文件替换为 SD 卡中的预构建文件、然后尝试启动。

    还请启用以下 u-boot 文件中的 debug()输出,以便在引导日志中具有更详细的输出。
    common/spl/spl.c
    common/common_fit.c

    另请注意、我们有两个 DTS 文件、一个用于 u-boot、一个用于内核:

    u-boot/arch/arm/dts/am572x-idk.dts
    linux-kernel/arch/arm/boot/dts/am572x-idk.dts

    u-boot 应嵌入 u-boot 映像中、而内核应生成 DTB 文件、并且应位于 SD/rootfs/boot/文件夹中。 在构建 MLO/u-boot 期间、确保 u-boot DTS 也会构建。

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

    Mahesh、

    UBoot 具有单独的 DTS 文件、可在 uboot defconfig 中设置为 CONFIG_DEFAULT_DEVICE_TREE。 此 DTS 文件是使用 uboot 映像构建的、这意味着它是 uboot 映像的一部分。 uboot dts 文件的语法与 Linux 内核 dts 文件的语法相同。 Linux DTS 文件被编译为 DTB 文件、并被单独用于分析 Linux 内核的硬件配置。 Linux DTB 映像与 Linux 内核映像分开刷写。

    确保在构建 MLO/u-boot 映像时具有以下控制台输出(在构建期间):

    TI-processor-sdk-linux-am57xx-evm-04.00.00.04/board-support/u-boot-2017.01+gitAUTOINC+9fd60700db-g9fd60700db$ make

     DTC  arch/arm/dts/am57xx-beagle-x15.dtb

     DTC  arch/arm/dts/am57xx-beagle-x15-revb1.dtb

     DTC  arch/arm/dts/am57xx-evm-reva3.dtb

     DTC  arch/arm/dts/am572x-idk.dtb

     DTC  arch/arm/dts/am571x-idk.dtb

     已发运 DTS/dt.dtb

     MKIMAGE u-boot.img

     objcopy u-boot.srec

     CAT  u-boot-dtb.bin

     复制  u-boot.bin

    .

    LD   spl/dts/built-in.o

    .

    LD   spl/u-boot-spl

     objcopy spl/u-boot-spl-nodtb.bin

     FDTGREP spl/u-boot-spl.dtb

     CAT  spl/u-boot-spl-dtb.bin

     复制  spl/u-boot-spl.bin

     MKIMAGE MLO

     复制  u-boot.dTB

     MKIMAGE u-boot-dtb.img

    此致、

    帕维尔