|
一、配置文件 上一节中讲过,在编译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篇章,我们还会再见到它。
|