1. 下载u-boot源码
    u-boot源码获取地址:
    链接: https://pan.baidu.com/s/1tap4jVQnjdYmyoPVWHdsMg 提取码: 9dv2
    【uboot/u-boot-2016-imx6ull-som.tar.bz2】

  2. 解压u-boot源码
    将下载的u-boot源码解压Ubuntu虚拟机的用户目录下。

    $ tar -xjvf u-boot-2016-imx6ull-som.tar.bz2

    解压完成后,进入到源码u-boot-2016-imx6ull-som目录下,即可查看到u-boot源码内容:

    $ ls
    api   board  common     configs  doc      dts       fs       Kbuild   lib       MAINTAINERS  Makefile  post    scripts          test
    arch  cmd    config.mk  disk     drivers  examples  include  Kconfig  Licenses  MAKEALL      net       README  snapshot.commit  tools
  3. 编译源码
      源码编译之前,请先确认当前shell环境已成功设置Qt4.8.7硬浮点交叉编译器环境变量。u-boot的编译配置需要根据IDO-EVB6Y09开发板搭配的核心板配置和启动方式的差异来选择不同的编译配置文件,编译配置文件如下表所示:

配置文件 功能说明
mx6ull_14x14_evk_emmc_ddr512_defconfig 从eMMC启动,512MB DDR
mx6ull_14x14_evk_nand_ddr256_defconfig 从Nand Flash启动,256MB DDR
mx6ull_14x14_evk_sd_emmc_ddr512_defconfig 从SD卡启动eMMC核心板,512MB DDR
mx6ull_14x14_evk_sd_nand_ddr256_defconfig 从SD开启动Nand Flash核心板,256MB DDR

  以编译“512MB DDR + 8GB eMMC”核心板的u-boot为例,编译u-boot的方法如下所示:
步骤1:清空上一次编译内容

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean

步骤2:使用defconfig配置文件编译出.config文件

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_evk_emmc_ddr512_defconfig

步骤3:编译

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j30

  编译完成后,源码的根目录会产生名为“u-boot.imx”的u-boot烧录镜像文件,此文件就是用于烧录512MB DDR+eMMC核心板的u-boot文件。
  其它配置的核心板和从SD卡启动所需要的u-boot镜像编译方法,只需要修改第二步选择的defconfig配置文件,其余的步骤和上方的编译步骤一样。

文档更新时间: 2020-12-19 15:51   作者:admin