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:定制板上的 SD 卡引导失败

Guru**** 2925110 points

Other Parts Discussed in Thread: AM5728, DRA752

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/661830/linux-am5728-sd-card-boot-fails-on-custom-board

器件型号:AM5728
主题中讨论的其他器件: DRA752

工具/软件:Linux

您好!

我们的剖切板采用与 am5728 EVM 相同的设计。 我们使用的是 SDK 2.00.17、我们已经编译了内核和 u-boot。

EVM 正在通过编译的映像进行顺利引导、但定制板未引导、该过程被占用、显示如下所述的单行代码

U-Boot SPL 2015.07-00080-g4523775-脏 污(2018年2月2日- 09:38:10)

DRA752 ES1.1

谢谢、此致、

Vijay Patil。

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

    您好、Vijay、

    您的定制板是否具有 EEPROM? 最新 Processor SDK 的行为是什么?

    此致、
    Kemal

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

    感谢您的回复、

    在最新的 SDK 中、它会出现一些编译错误、但不会生成 zImage。
    我只想使用 SDK 版本02.00.01.07启动电路板。
    在 AM572x-EVM 中、它会引导、但在定制板中、它不会引导。
    是的、我的电路板中确实有 EEPROM、并且尝试使用最新 SDK 的预编译映像启动电路板、但出现了相同的问题

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

    抱歉、我的定制板上没有 EEPROM、我们使用了 NVRAM。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此 NVRAM 用于保存并提供 U-Boot 的电路板信息或从操作系统级别保存和加载配置文件,有何用途?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们将 NVRAM 用于某些保护目的,而不是用于上述目的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     您能否在中使用#define debug 附加完整的引导日志 /board-support/u-boot- /include/configs/ti_omap5_common.h?

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

    文件为:

    #ifndef _CONFIG_TI_OMAP5_common_H
    #define __CONFIG_TI_OMAP5_common_H

    #define CONFIG_DISPLAY_cpuinfo
    #define CONFIG_DISPLAY_BOARDINFO
    #define CONFIG_ARCH_CPU_INIT

    /*常见 ARM 错误*/
    #define CONFIG_ARM_勘 误表_798870

    #define CONFIG_SYS_CACHELINE_SIZE   64

    /*使用通用定时器1 */
    #define CONFIG_SYS_TIMERBASE      GPT2_BASE

    /*
     *对于 DDR 时序信息、我们可以动态确定
     *使用或使用预先确定的时序(基于使用
     *动态方法。  默认为静态时序信息。
     *
    #define CONFIG_SYS_EMIF_precalculed_timing_regs
    #ifndef CONFIG_SYS_EMIF_precalculed_timing_regs
    #define CONFIG_SYS_AUTOMATE_SDRAM_DETATION
    #define CONFIG_SYS_DEFAULT_LPDDR2_时序
    #endif

    #ifndef CONFIG_SPL_Build
    #define CONFIG_PALMAS 电源
    #endif

    #include
    #include

    #include

    #ifndef CONFIG_CM_T54
    /* USB 小工具*/
    #define CONFIG_USB_DWC3_PHY_OMAP
    #define CONFIG_USB_DWC3_OMAP
    #define CONFIG_USB_DWC3
    #define CONFIG_USB_DWC3_Gadget

    #define CONFIG_USB_Gadget
    #define CONFIG_USBDOWNLOAD 小工具
    #define CONFIG_USB_GADGET_VBUS_Draw 2.
    #define CONFIG_G_DNL_Manufacturer "Texas Instruments"
    #define CONFIG_G_DNL_VENDOR_NUM 0x0403
    #define CONFIG_G_DNL_PRODUCT_NUM 0xBD00
    #define CONFIG_USB_GADGET_DUALSPEED

    /* USB 设备固件更新支持*/
    #define CONFIG_DFU_FUNCTION
    #define CONFIG_DFU_RAM
    #define CONFIG_CMD_DFU

    #define CONFIG_DFU_MMC
    #endif

    /*
     *硬件驱动程序
     *
    #define CONFIG_SYS_NS16550
    #define CONFIG_SYS_NS16550_serial
    #define CONFIG_SYS_NS16550_REG_SIZE   (-4)
    #define CONFIG_SYS_NS16550_CLK      48000000

    /*
     *环境设置
     *
    #ifndef parts_default
    #define parts_default
    #endif


    #define DFU_ALT_INFO_MMC \
       "dfu_alt_info_mmc=""\
       "引导器件0 1;"\
       "rootfs 第0部分2;"\
       "MLO fat 0 1;"\
       "MLO.RAW 0x100 0x100;"\
       "u-boot.img.raw 0x300 0x400;"\
       "SPL-OS-args.raw 0x80 0x80;"\
       "SPL-OS-IMAGE.RAW 0x900 0x2000;"\
       "SPL-OS-args fat 0 1;"\
       "SPL-OS-image fat 0 1;"\
       "u-boot.img fat 0 1;"\
       "uEnv.txt fat 01\0"

    #define DFU_ALT_INFO_EMMC \
       "dfu_alt_info_eMMC="\
       "rawemmc raw 0 3751936;"\
       "引导第1部分;"\
       "rootfs 第1部分2;"\
       "MLO fat 1;"\
       "MLO.RAW 0x100 0x100;"\
       "u-boot.img.raw 0x300 0x400;"\
       "SPL-OS-args.raw 0x80 0x80;"\
       "SPL-OS-IMAGE.RAW 0x900 0x2000;"\
       "SPL-OS-args fat 1;"\
       "SPL-OS 图像脂肪1;"\
       "u-boot.img fat 1;"\
       "uEnv.txt fat 1\0"

    #define DFU_ALT_INFO_RAM \
       "dfu_alt_info_ram=""\
       "内核 RAM 0x80200000 0x4000000;"\
       "FDT RAM 0x80f80000 0x80000;"\
       "ramdisk ram 0x81000000 0x4000000\0"

    #define DFU_ALT_INFO_QSPI \
       "dfu_alt_info_qspi=""\
       "MLO RAW 0x0 0x010000;"\
       "MLO.Backup1 RAW 0x010000 0x010000;"\
       "MLO.Backup2 RAW 0x020000 0x010000;"\
       "MLO.backup3 RAW 0x030000 0x010000;"\
       "U-boot.img raw 0x040000 0x0100000;"\
       "u-boot-spl-OS RAW 0x140000 0x080000;"\
       "u-boot-env raw 0x1C0000 0x010000;"\
       "U-boot-env.backup raw 0x1D0000 0x010000;"\
       "内核原始0x1E0000 0x800000\0"

    #define DFUARGS \
       "dfu_Bufsiz=0x10000\0"\
       DFU_ALT_INFO_MMC \
       DFU_ALT_INFO_EMMC \
       DFU_ALT_INFO_RAM \
       DFU_ALT_INFO_QSPI

    #ifndef CONFIG_SPL_Build
    #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
    #define CONFIG_Extra ENV_SETTINGS \
       DEFAULT_LINUX_BOOT_ENV \
       DEFAULT_MMC_TI_args \
       "console=" CONSOLEDEV "、115200n8\0"\
       "Fdtfile=undefined\0"\
       "bootpart=0:2\0"\
       "bootdir=/boot\0"\
       "BootFile=zImage\0"\
       "usbtty=CDC_ACM\0"\
       "VRAM=16M\0"\
       "partitions=" parts_default "\0"\
       "optargets=\0"\
       "dofastboot=0\0"\
       "loadbootscript=fatload MMC ${mmcdev}${loadaddr}boot.scr\0"\
       "bootscript=echo running bootscript from MMC${mmcdev}...;"\
          "源${loadaddr}\0"\
       "loadimage=load MMC ${bootpart}${loadaddr}${bootdir}/${bootfile}\0"\
       "mmcboot=MMC dev ${mmcdev};"\
          "如果 MMC 重新扫描;然后"\
             "在器件${mmcdev}上找到回显 SD/MMC;"\
             "如果运行 loadimage、则"\
                "运行 loadfdt;"\
                "echo Booting from MMC${mmcdev}...;"\
                "运行 args_mmc;"\
                "bootz ${loadaddr}-${fdtaddr};"\
             " FI;"\
          " FI;\0"\
       "findfdt="\
          "如果 test $board_name = omap5_uevm;则"\
             "setenv fdtfile omap5-uevm.dtb;fi;"\
          "如果 test $board_name = dra7xx;则"\
             "setenv fdtfile dra7-evm.dtb;fi;"\
          "如果 test $board_name = dra72x;则"\
             "setenv fdtfile dra72-evm.dtb;fi;"\
          "如果 test $board_name = beagle_x15;则"\
             "setenv fdtfile am57xx-beagle-x15.dtb;fi;"\
          "如果 test $board_name = am57xx_evm;则"\
             "setenv fdtfile am57xx-evm.dtb;fi;"\
          "如果 test $board_name = am572x_idk;则"\
             "setenv fdtfile am572x-idk.dtb;fi;"\
          "如果 test $board_name = am571x_idk;则"\
             "setenv fdtfile am571x-idk.dtb;fi;"\
          "如果 test $board_name = am572x_idk_OSD;则"\
             "setenv fdtfile am572x-idk-lcd-osd.dtb;fi;"\
          "如果测试$board_name = am571x_idk_OSD;则"\
             "setenv fdtfile am571x-idk-lcd-osd.dtb;fi;"\
          "如果 test $fdtfile =未定义;则"\
             "回显警告:无法确定要使用的设备树;fi;\0"\
       "loadfdt=load MMC ${bootpart}${fdtaddr}${bootdir}/${fdtfile};\0"\
       DFUARGS \
       NETARGS \


    #define CONFIG_BOOTCOMMAND \
       "如果测试${dofastboot}-eq 1;则"\
          "已请求回显引导快速引导,正在重置 dofastboot ...;"\
          "setenv dofastboot 0;saveenv;"\
          "echo Booting into fastboot...;fastboot;"\
       " FI;"\
       "运行 findfdt;"\
       "运行 envboot;"\
       "运行 mmcboot;"\
       "setenv mmcdev 1;"\
       "setenv bootpart 1:2;"\
       "setenv mmcroot /dev/mmcblk0p2 rw;"\
       "运行 mmcboot;"\
       ""
    #endif


    /*
     * SPL 相关定义。  公共 RAM 存储器映射 ROM 定义
     * 0x40300000和0x4031E000之间的区域作为 OMAP5的下载区域
     *(dra7xx 较大、但此时我们不需要较大)。  我们
     *将 CONFIG_SPL_DISPLAY_PRINT 设置为使 OMAP-REV_STRING()调用和
     *打印一些信息。
     *
    #define CONFIG_SPL_TEXT_BASE      0x40300000
    #define CONFIG_SPL_MAX_SIZE      (0x4031E000 - CONFIG_SPL_TEXT_BASE)
    #define CONFIG_SPL_DISPLAY_PRINT
    #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds
    #define CONFIG_SYS_SPL_args_ADDR   (CONFIG_SYS_SDRAM_BASE +\
                   (128 < 20))

    #ifdef CONFIG_NAND
    #define CONFIG_SPL_NAND_AM33XX_BCH   /* ELM 支持*/
    #endif

    #endif /*__config_TI_OMAP5_common_H */

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    该文件没问题、现在将#define debug 添加到其中并推荐 U-Boot、然后使用这个新的 U-Boot 引导电路板并附加引导日志。