uboot研读笔记 | 09 - 移植uboot 2012.04到JZ2440(设置默认环境变量参数)
1. 定位环境变量问题 目前移植的uboot支持SDRAM、Nor Flash、Nand Flash、DM9000网卡,但是还有一行警告没有处理: 这行警告的原因是没有设置环境变量参数,所以uboot启动时读取校验参数失败,使用默认的参数。 通过搜索这行日志内容找到所在位置: 在 common/env_common.c 文件中找到该行代码所在函数: 该函数中主要使用的 default_environment 数组,接着查看该数组内容,同样定义在该文件中,该数组的功能是 根据我们定义的宏定义来设置默认环境变量参数 。 2. 设置默认参数 在单板配置文件 include/configs/smdk2440.h 中配置这些相关宏定义: 2.1. 内核启动相关 CONFIG_BOOTARGS 宏定义是启动内核时要传入的参数,添加配置如下: /* 内核启动相关ENV */ # define CONFIG_BOOTARGS "console=ttySAC0,115200 root=/dev/mtdblock3" # define CONFIG_BOOTCOMMAND "nand read 30000000 kernel 0x200000;bootm 30000000" 2.2. 网络相关 /* 网络相关ENV */ # define CONFIG_NETMASK 255.255.255.0 #