Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1152193
  • 博文数量: 222
  • 博客积分: 5262
  • 博客等级: 大校
  • 技术积分: 3028
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-22 19:10
文章分类

全部博文(222)

文章存档

2012年(2)

2011年(192)

2010年(28)

分类: 嵌入式

2011-04-21 16:05:07

        首先把我们编译的u-boot.bin文件烧写到sd卡的0地址处。
         dd if=./u-boot.bin of=/dev/sdb
        然后把uImage烧写到0x100000(即1MB)地址处,因为MBR+u-boot.bin <= 1M,u-boot。bin大约250KB,我们这里给u-boot留够空间。
          dd if=./uImage of=/dev/sdb bs=1024 seek=1024 count=3072
        然后再给SD卡分区,分区信息保存在MBR中:
      
     MBR大小为512字节。
      由于mx51数据手册中明确写了sd卡的0地址处要为MBR,所以我们把MBR信息覆盖掉u-boot.bin的前512字节部分。
     命令:fdisk /dev/sdb
     要求给第一个主分区起始地址至少4M以后,为了给前面的MBR+bootloader+kernel留足够的空间。分区格式可以任意,只要在kernel配置里面添加相应的文件系统格式支持就可以了,然后把根文件系统放到第一个分区,用cp -rpa [A-z]* /home/user/rootfs /tftpboot/mx51实现递归目录拷贝,这样板子一上电就可以跑起来了。
     下面说一下在u-boot模式下烧写kernel的方法。
     命令:(1)tftpboot 0x90800000 192.168.2.104:/tftpboot/uImage
               (2)mmc write 0 0x90800000 0x800 0x2000
     
阅读(3960) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~