在启动uboot时,会读取SD卡中的uEnv.txt文件,这个文件是环境变量吗?
U-Boot 2014.07-00107-ga6ef75a-dirty (Nov 24 2015 - 16:36:55) I2C: ready DRAM: 512 MiB NAND: 0 MiB MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1 reading uboot.env ** Unable to read "uboot.env" from mmc0:1 ** Using default environment Net: <ethaddr> not set. Validating first E-fuse MAC cpsw Hit any key to stop autoboot: 0 WARNING: Could not determine device tree to use switch to partitions #0, OK mmc0 is current device SD/MMC found on device 0 reading uEnv.txt ** Unable to read file uEnv.txt ** ** Invalid partition 2 ** Card did not respond to voltage select! SD/MMC found on device 1 Card did not respond to voltage select! ** Bad device mmc 1 ** Card did not respond to voltage select! ** Bad device mmc 1 ** Booting from nand ... no devices available no devices available Bad Linux ARM zImage magic! U-Boot#
但是这个uEnv.txt从何而来? 在create.sdcard.sh 758行发现以下shell片段:
#check that files are in SDK BOOTFILEPATH="$PARSEPATH/board-support/prebuilt-images" MLO=`ls $BOOTFILEPATH | grep MLO | awk {'print $1'}` KERNELIMAGE=`ls $BOOTFILEPATH | grep [uz]Image | awk {'print $1'}` BOOTIMG=`ls $BOOTFILEPATH | grep u-boot | grep .img | awk {'print $1'}` BOOTBIN=`ls $BOOTFILEPATH | grep u-boot | grep .bin | awk {'print $1'}` BOOTUENV=`ls $BOOTFILEPATH | grep uEnv.txt | awk {'print $1'}`
但是prebuilt-images 目录下并没有发现这个uEnv.txt,是需要手动保存吗?执行save命令,也只是保存为uboot.env文件。