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:TFTP 引导挂起

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/601429/linux-am5728-tftp-boot-hangs

器件型号:AM5728

工具/软件:Linux

您好!

我正在尝试从 tftp 引导 am57x 评估板。 我使用 setup.sh 脚本(tftp 引导、SD 卡 NFS)设置此功能。

u-boot 启动时、它从/tftpboot 目录( zImage-am57xx-evm.bin)中载入镜像。 但加载后、它挂起、

给出以下错误:

zImage-am57xx-evm.bin

加载地址:0x82000000
正在加载:############################################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ####################################################
        ######################################
        4.1 MIB/s
完成
传输的字节= 3597872 (36e630十六进制)
bootm 命令的映像格式错误
错误:无法获取内核映像!
切换到分区#0,确定
mmc0是当前器件
在器件0上找到 SD/MMC
**找不到文件/boot/zImage-am57xx-evm.bin **
无法设置信号电压
切换到分区#0,确定
mmc1 (第0部分)是当前器件
无法设置信号电压
在器件1上找到 SD/MMC
正在阅读/boot/zImage-am57xx-evm.bin
**无法读取文件/boot/zImage-am57xx-evm.bin **

您能不能提出解决方案?

谢谢

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

    错误消息"Wrong Image Format for bootm command"可能是由于缺少包含目标架构、操作系统、映像类型、压缩方法、入口点、 时间戳、校验和等、描述在:
    linux.die.net/.../mkimage
    此外、如果使用跳过此检查的 CONFIG_DISABLE_IMAGE_LEGACTION 集构建 u-boot、则可以跳过此检查(并且不会显示错误消息)。 (请参阅 u-boot 名称文件):
    github.com/.../README

    BR
    Tsvetolin Shulev
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Shulev、您好!
    config_fallbacks.h 中的 CONFIG_DISABLE_IMAGE_LEGACY 似乎已禁用
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Napy温泉

    应启用 CONFIG_DISABLE_IMAGE_LEGACTION。 此选项取消定义 CONFIG_IMAGE_FORMAT_LEGACY_LEGACW 选项、这会导致一些额外的检查和错误消息"引导命令的映像格式错误"。 请参阅以下文件:
    /include/config_fallbacks.h 搜索 CONFIG_DISABLE_IMAGE_LEGACY
    /common/bootm.c 搜索"错误的图像格式"

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

    抱歉、我写错了、它在任何地方都没有定义。 Belove 是其名称存在的唯一行:

    #ifdef CONFIG_DISABLE_IMAGE_LEGACY
    #undef config_image_format_legacy
    #endif

    我是否应该定义它并将其设置为零? (我不认为这是因为它没有被使用的地方)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我能够引导我的。
    新创建的内核(位于 arch/arm/boot 目录下)、因此我没有遇到上述问题。 但是、
    我还有一个相关问题:

    我想使用 CCS Over JTAG 来调试内核。 因此我想加载内核
    调试选项。 当我重建内核时,在我认为具有调试符号的顶部内核目录中会出现 vmlinux 映像,因为它的大小更大。(13,7MB)

    问题是我不知道如何通过 uboot 加载此映像。 当我加载它、就像普通的二进制文件一样、它当然会加载、但我运行它、
    它导致错误的 Linux Arm zImage 魔术错误。 那么、为了能够调试内核、需要加载哪种映像以及如何加载映像?

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

    可以、您可以使用随机值定义 CONFIG_DISABLE_IMAGE_LEGACY、但最好设置 Y 或 ENABLED。

    BR
    Tsvetolin Shulev