一、串口烧入:
1)建立uboot#界面
1、打开Tera Term,设置好串口和波特率,335开关设置1、7、8打开,其它关闭。
2、选择Transfer --> XMODEM --> Send (1K mode)把u-boot-spl.bin文件写入。
3、选择Transfer --> YMODEM --> Send (1K mode)把u-boot.img文件写入。
4、 这两个文件写入后会自动启动uboot,在倒计时时快速按入enter键,进入到uboot#界面
2)烧入 MLO
1、输入 U-Boot# loadb 0x82000000
2、输入 U-Boot# loadb 0x82000000 选择“File -> Transfer -> Kermit -> Send”.选入MLO
3、(重要)输入U-Boot# nandecc hw 2 选择检验类型
4、U-Boot# nand erase 0x0 0x20000 //擦除nand 0x0地址,偏移量0x2000
5、U-Boot# nand write 0x82000000 0x0 0x20000//将内存0x82000000写入到nand 0x0 中
3)烧入 u-boot.img 同理烧入到 ox800000
1、U-Boot# loadb 0x82000000
2、输入 U-Boot# loadb 0x82000000 选择“File -> Transfer -> Kermit -> Send”.选入u-boot.img
3、U-Boot# nandecc hw 2
4、U-Boot# nand erase 0x80000 0x40000
5、U-Boot# nand write 0x82000000 0x80000 0x40000
4)偏移量计算:
For example, to mark block 32 (assuming erase block size of 128Kbytes) as bad block - offset = blocknum * 128 * 1024:
U-Boot# nand markbad 0x400000
二、sd卡烧入:
2-1:
1)加载MLO到内存中。
U-Boot# mmc rescan
U-Boot# fatload mmc 0 0x82000000 MLO
2)从内存到nand falsh中。
U-Boot# nand erase 0x0 0x20000
U-Boot# nand write 0x82000000 0x0 0x20000
3)加载u-boot.img到内存中。
U-Boot# mmc rescan(mmc卡扫描,同挂载)
U-Boot# fatload mmc 0 0x82000000 u-boot.img(读取文件从mmc卡中的u-boot.img文件到0x82000000地址中)
4)从内存到nand falsh中。
U-Boot# nand erase 0x80000 0x40000
U-Boot# nand write 0x82000000 0x80000 0x40000(从0x82000000读取并写入到起始地址为0x80000,偏移量0x40000)
2-2
可以建立uEnv.txt文件如下:(最后一行为空)
1)
bootargs=console=ttyO0,115200n8 root=/dev/mmcblk0p2 mem=128M rootwait
bootcmd=mmc rescan; fatload mmc 0 0x82000000 uImage; bootm 0x82000000
uenvcmd=boot (空)
2)
命令
U-Boot# mmc rescan
U-Boot# fatload mmc 0 0x81000000 uEnv.txt
U-Boot# env import -t 0x81000000 $filesize
U-Boot# boot