UBoot启动时在串口输入回车键进入UBoot环境,再输入printenv可以看到UBoot中的启动参数,如下:
bootdelay=3
baudrate=115200
loadaddr=0x70800000
rd_loadaddr=0x70D00000
bootfile=uImage
loadaddr=0x70800000
rd_loadaddr=0x70D00000
bootargs=console=ttymxc0 init=/init androidboot.console=ttymxc0 video=mxcdi0fb:RGB24,bpp=24 gpu_nommu gpu_memory=64M ldb=di0 di0_primary
bootcmd_SD=mmc dev 1 0; mmc read ${loadaddr} 0x800 0x2000;mmc read ${rd_loadaddr} 0x3000 0x1200
bootcmd=run bootcmd_SD; bootm ${loadaddr} ${rd_loadaddr}
bootcmd_android_recovery=run bootargs_android_recovery;mmc dev 1 4;mmc read ${loadaddr} 0x800 0x2000;bootm
bootargs_android_recovery=setenv bootargs ${bootargs} video=mxcdi0fb:RGB24,bpp=16 init=/init root=/dev/mmcblk0p4 rootdelay=2 rootfs=ext4
splashimage=0x78000000
stdin=serial
stdout=serial
stderr=serial
下面逐条说明:
bootdelay=3:表示UBoot在加载kernel之前等待时间,此处设置为3秒。
baudrate=115200:设置串口波特率为115200。
laodaddr=0x70800000:设置kernel在内存中的加载地址为0x70800000。
rd_loadaddr=0x70D00000:设置ramdisk在内存中的加载地址为0x70D00000。
bootfile=uImage:设置UBoot启动的kernel文件名称为uImage。
bootargs=console=ttymxc0 init=/init androidboot.console=ttymxc0 video=mxcdi0fb:RGB24,bpp=24 gpu_nommu gpu_memory=64M ldb=di0 di0_primary:设置kernel启动参数,说明如下:
<console=ttymxc0>:设置控制台设备为ttymxc0。
<init=/init>:设置kernel第一个执行的文件为init。
<androidboot.console=ttymxc0>:设置android的控制台设备为ttymxc0。
<video=mxcdi0fb:RGB24,bpp=24>:设置video设备为mxcdi0fb,输出模式为RGB24,位深度为24位。
<gpu_nommu gpu_memory=64M>:设置GPU无MMU,缓存64M。
<ldb=di0 di0_primary>:设置显示设备为di0,且di0为主显示设备。