• 正文
  • 相关推荐
申请入驻 产业图谱

飞凌嵌入式ElfBoard ELF 1板卡-uboot配置详解

05/22 16:35
1034
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、配置文件

上一节中讲过,在编译uboot之前,我们需要对uboot进行配置。我们打开configs/文件夹,会看到很多_defconfig为结尾的文件:

zmx25_defconfig

zynq_microzed_defconfig

zynq_picozed_defconfig

zynq_zc702_defconfig

zynq_zc706_defconfig

zynq_zc770_xm010_defconfig

zynq_zc770_xm011_defconfig

zynq_zc770_xm012_defconfig

zynq_zc770_xm013_defconfig

zynq_zed_defconfig

zynq_zybo_defconfig

这些都是uboot可以支持的不同平台的配置文件。我们只关心跟i.MX6ULL相关的_defconfig,输入命令:

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$ ls configs/*mx6ull*

我们的uboot是在官方14x14_evk板相应源码基础上做开发,所以我们在mx6ull_14x14_evk_defconfig、mx6ull_14x14_evk_emmc_defconfig、mx6ull_14x14_evk_nand_defconfig、mx6ull_14x14_evk_qspi1_defconfig这4个文件中进行选择,ElfBoard开发板使用的flash是eMMC,我们选择提供的uboot源码当中的imx6ull_elf1_emmc_defconfig是在mx6ull_14x14_evk_emmc_defconfig的基础上修改而来的。

打开imx6ull_elf1_emmc_defconfig配置文件,看看究竟都有哪些配置:

1 CONFIG_SYS_EXTRA_OPTIONS=”IMX_CONFIG=

2 board/freescale/mx6ullevk/imximage_emmc.cfg,MX6ULL_EVK_EMMC_REWORK”

3 CONFIG_ARM=y

4 CONFIG_ARCH_MX6=y

5 CONFIG_TARGET_MX6ULL_14X14_EVK=y

6 CONFIG_CMD_GPIO=y

第1行,这个配置项引用了一个文件路径和一个类似是宏定义的字符串“MX6ULL_EVK_EMMC_REWORK”。

board/freescale/mx6ullevk/imximage_emmc.cfg文件中存放着制作imximage也就是uboot.imx镜像的重要数据(DCD),这些DCD数据主要是用于boot ROM初始化外设时钟、初始化配置DDR,关于boot ROM相关内容,后面的章节会详细讲解。

而MX6ULL_EVK_EMMC_REWORK这个字符串是为了区分板卡类型是eMMC版还是NAND版,uboot程序会根据这个配置项,运行不同的程序分支。

使用以下命令:

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$ make imx6ull_elf1_emmc_defconfig

可在uboot根目录下生成.config文件,此文件才是编译时最终使用的配置文件。我们可以根据自己需求进行配置,配置方式可通过直接编辑.config文件进行配置,也可以使用图形界面两种方式进行配置。但是我们使用的uboot功能比较少,直接使用默认配置文件即可满足目前使用,不需要做修改。但是为了熟悉图形界面,也为后面linux内核章节打下基础,我们演示一下如何使用图形界面进行系统配置。

二、图形界面配置

图形界面配置,使用命令:

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$ make menuconfig

会出现图形界面:

经过了前面对内核部分的学习,想必大家对这个窗口已经非常熟悉了,它的使用方法和内核是很类似的,这里就不再赘述了。在后面的移植uboot篇章,我们还会再见到它。

相关推荐