实验二 u-boot的烧写及使用
实验目的
了解u-boot的常用命令和linux内科的引导
实验环境
- ubuntu12.04发行版
- u-boot-2010.03
- 4412平台
- 交叉编译器 arm-none-linux-gnueabi-gcc
实验步骤
- SD启动盘制作
a) d_fusing拷贝到linux下
b) SD卡 插入电脑并识别
c) 进入sdfuse_d执行如下操作
$ sudo ./mkuboot.sh /dev/sdb
d) 在SD卡中创建目录sdupdate并把d)u-boot-fs4412.bin拷贝到这个目录下 - u-boot的烧写
选择右上角的”Serial”,然后点击左下角的”Serial”
按照自己的主机的情况选择COM口其他必须一直,然后点击open打开串口
b) 关闭开发板电源,将拨码开关SW1调至(1000)(SD启动模式)后打开电源
c) 将刚才做好的SD启动盘插入SD卡插槽
d) 重新打开开发板能够看到如下界面
在倒计时结束前按任意键
e) 烧写
在终端上执行
sdfuse flashall
等待终端无输出是表示烧写结束
f) 关闭开发板电源,将拨码开关SW1调至0110(EMMC启动模式)后打开电源可以看到如下界面表示烧写成功
在倒计时时按任意键 通过网络加载内核和文件系统
a) 将 镜像文件/uImage拷贝到ubuntu的 /tftpboot下
b) 将 镜像文件/rootfs.tar.xz拷贝到ubuntu的 /source下并解压
c) 将 镜像文件/exynos4412-fs4412.dtb拷贝到ubuntu的 /tftpboot下
d) 修改虚拟机nfs配置文件/etc/exports,添加如下内容并重启nfs服务
/source/rootfs *(rw,sync,no_subtree_check,no_root_squash)
e) 重新驱动nfs服务
$ sudo /etc/init.d/nfs-kernel-server restart
f) 设置启动参数
# setenv serverip 192.168.9.120
# setenv ipaddr 192.168.9.233
# setenv bootcmd tftp 41000000 uImage\;tftp 42000000 exynos4412-fs4412.dtb\;bootm 41000000 - 42000000
#setenv bootargs root=/dev/nfs nfsroot=192.168.9.120:/source/rootfs rwconsole=ttySAC2,115200 init=/linuxrc ip=192.168.9.233
# saveenv
192.168.9.120 对应Ubuntu的ip
192.168.9.233 对应板子的ip
这两个ip应该根据自己的实际情况适当修改g) 启动开发板看到如下现象表示成功通过网络挂载:
这是可以输入一些Linux的命令测试