1.1 将boatloader从SD卡烧写到EMMC(4G)的第一分区:
将boatloader从SD卡烧写到EMMC(4G)的第一分区:
注意:sd卡要从1逻辑块烧,emmc要从0逻辑块开始烧。一个逻辑快512字节。
emmc分为四个分区:
第1个分区存放:bootloader 的4个文件(bl1,bl2,uboot.bin,tzsw) //bl2.bin在制作SD启动卡时会生成
第2个: kernel
第3个: 根文件系统
第4个: 其他数据
boatloader命令行常用命令:
help / ? (查看bootloader的命令)
bootm // 启动内核
dnw
emmc
ext2format
ext3format
fatformat
ext2load
ext2ls
go
reset
setenv
printenv // 打印环境变量 第一行:波特率
第二行:内核自启动。需要添加bootargs:设置环境变量
设置环境变量: set serverip 192.168.1.104
保存环境变量:
saveenv
步骤实操如下:
1. mmc // mmc list 查看和mmc接口连接的设备编号
mmcinfo // mmcinfo 0/1 查看mmc和sd卡是0还是1
fdisk // fdisk -p 1/0 查看分区

2. 对mmc进行分区
fdisk -c 1 320 2057 520
//指定第2.3.4个分区的大小,剩下的是第一个分区的大小。

3.格式化EMMC的四个分区:
fatformat mmc 1:1 格式化为fat(0x0c)格式
ext3format mmc 1:2 格式化为ext3(0x83)格式
ext3format mmc 1:3 格式化为ext3(0x83)格式
ext3format mmc 1:4 格式化为ext3(0x83)格式


4.将bootloader烧写到emmc的第一个分区:
开发板端:
emmc open 1 //打开emmc
dnw 50000000 //下载到开发板的位置,地址可以变。
pc端:
dnw E4412_N.bl1.bin
开发板端:
mmc write 1 50000000 0 10
往mmc写,在50000000 地址的第0个逻辑块开始,共写10个逻辑块。
开发板端:
dnw 50000000
pc端:
dnw bl2.bin //[root@localhost sd_fuse]# dnw mkbl2
开发板端:
mmc write 1 50000000 10 20
开发板端:
dnw 50000000
pc端:
dnw ../../u-boot.bin
开发板端:
mmc write 1 50000000 30 290
开发板端:
dnw 50000000
pc端:
dnw E4412_tzsw.bin
开发板端:
mmc write 1 50000000 2c0 b8
emmc close 1 //关闭emmc
关机 拨到远离铜柱,重启开发板,测试...


关机 拨到远离铜柱,重启开发板,自动进入 从SD卡烧写到EMMC(4G)的第一分区成功的 bootloader阶段...
测试成功!

浙公网安备 33010602011771号