1 编译步骤
declare -x ARCH="arm"
declare -x CROSS_COMPILE="arm-linux-gnueabihf-"
#make clean
make infinity2m_spinand_defconfig
make -j8
期望文件:u-boot_spinand.xz.img.bin
2 过程解析
2.1 主配置文件
./configs/infinity2m_spinand_defconfig 为主配置文件。
可以通过 make menuconfig 进行可视化配置。
2.2 默认环境变量
- ./common/cmd_mstar.c
可以改变编译后默认的环境变量,可以进行增加删除和修改。
主要方便Uboot更新后,无需在进行手动的地址配置。
如
#define DEFAULT_BOOTDELAY "1" // boot delay
#define DEFAULT_IPADDR "192.168.0.28" // target (debug) board IP
#define DEFAULT_SERVERIP "192.168.0.26" // tftp server IP
#define DEFAULT_SCRIPT_FILE_NAME "auto_update.txt" // script file name
- ./include/configs/infinity2m.h
定义一些uboot 的基本配置信息
#ifdef CONFIG_MS_SPINAND
#if defined(CONFIG_MS_SAVE_ENV_IN_NAND_FLASH)
#define CONFIG_ENV_IS_IN_NAND
#define CONFIG_ENV_OFFSET CONFIG_MSTAR_ENV_NAND_OFFSET
#define CONFIG_MSTAR_ENV_NAND_OFFSET ms_nand_env_offset
/*#define CONFIG_MSTAR_ENV_NAND_OFFSET 0x440000*/
#define CONFIG_ENV_RANGE 0x20000
#define CONFIG_ENV_SIZE 0x1000 // Using 4K length for env is enough, this length must be the same as IPL's env when using fastboot. // 0x00020000
#define CONFIG_ENV_OFFSET_REDUND CONFIG_MSTAR_ENV_NAND_REDUND_OFFSET
#define CONFIG_MSTAR_ENV_NAND_REDUND_OFFSET ms_nand_env_redund_offset
#endif
- set_config文件
其它的环境变量烧写时进行赋值。