u-boot参数设置(华清远见)
1.网络方式加载Linux内核(开发阶段)
(0)查看已经设置的参数
print
(1)设置tftp服务器端ip地址
setenv serverip 192.168.3.145
(2)设置开发板ip地址
setenv ipaddr 192.168.3.2 (bootloadr给板子设定的IP地址)
(3)设置开发板启动后,自动执行的命令
tftp 41000000(内存) uImage (Linux操作系统程序)
下载效果:
成功情况:#######################
失败情况:TTTTTTTTTTTTTTTTTTTTTTT
( <1>.网络不通[ping测试:开发板ping主机]
<2>.tftp服务是不是ok[重启服务]
<3> serverip错误
)
bootm 41000000(Linux系统地址) 43000000(文件系统地址) 42000000(设备树地址)
bootm 41000000 - 42000000
setenv bootcmd tftp 41000000 uImage\;tftp 42000000 exynos4412-fs4412.dtb\;tftp 43000000 ramdisk.img\;bootm 41000000 43000000 42000000
设置开发板启动的时候自动执行的命令:
setenv bootcmd tftp 41000000 uImage\;tftp 42000000 exynos4412-fs4412.dtb\;bootm 41000000 - 42000000
(4) 告诉操作系统系统启动后,挂载根文件系统的方式(网络方式挂载)
setenv bootargs root=/dev/nfs nfsroot=192.168.1.127(ubuntu IP):/home/linux/workdir/fs4412/fs/rootfs,proto=tcp,nfsvers=3,nolock rw console=ttySAC2,115200 init=/linuxrc ip=192.168.1.9(操作系统启动后给板子指定的IP地址)
setenv bootargs root=/dev/nfs nfsroot=192.168.3.33:/home/xiong/SmartHome/rootfs,proto=tcp,nfsvers=3,nolock rw console=ttySAC2,115200 init=/linuxrc ip=192.168.3.1
(5)保存设置好的环境变量
save
2、从EMMC加载内核和文件系统(产品发布阶段)
[1]烧写内核镜像到EMMC上
tftp 41000000 uImage 下载到内存
movi write kernel 41000000 将内存的数据写到EMMC
[2]烧写设备树文件到EMMC上
tftp 41000000 exynos4412-fs4412.dtb 下载到内存
movi write dtb 41000000 将内存的数据写到EMMC
[3]烧写文件系统镜像到EMMC上
tftp 41000000 ramdisk.img
movi write rootfs 41000000 300000(大小)
1kB 1024 = 2^10
1MB 2^20
1GB 2^30
0x300000 = 3 x 2^20 = 3M
0x4000 0000 内存大小1GB 结束地址:1 x 2^28 * 2^2 = 10000000 * 4 = 0x40000000 => 0x80000000
[4]设置启动参数
setenv bootcmd movi read kernel 41000000\;movi read dtb 42000000\;movi read rootfs 43000000 300000\;bootm 41000000 43000000 42000000
saveenv