zoukankan      html  css  js  c++  java
  • tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中 (转)

    http://blog.chinaunix.net/uid-30025978-id-4788683.html

    1、首先还是要将u-boot写入SD卡中从SD卡启动。

    • 使用读卡器将SD插入电脑中,使用umount卸载u盘, fdisk -l显示其挂载点为 /dev/sdb1
    • 切换到/home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412目录下,执行./sd_fusing.sh /dev/sdb
    • 拨动最右边开关选择从SD卡启动。

    附加编译过程:

      1.进入开发板提供的源码文件包,解压uboot源码包。

      cd /home/bunfly/source_code/    

      tar xf uboot_tiny4412-20130729.tgz

      2.进入uboot文件夹,更改uboot中tiny4412的配置文件。将225 中的Tiny4412更改为bunfly。

      cd uboot_tiny4412

      vim include/configs/tiny4412.h

      更改255行为#define CONFIG_SYS_PROMPT               "bunfly # "
      3. 回到u-boot文件夹,编译u-boot

      make tiny4412_config

      make 

      4.进入sd_fuse文件夹 编译

      cd sd_fuse

      make

      5.此时目录/home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412
      再执行./sd_fusing.sh /dev/sdb 

      OK!

    2、将uboot写入emmc,并通过EMMC驱动,不再只用SD卡启动

    0:  前奏 
        mmcinfo 0 : 查看mmc卡信息。0 表示SD卡; 1表示emmc卡,如下图
        fdisk -p 0 : 查看mmc卡分区信息 
     
    1:  格式化emmc卡 (一般分四个区)
        fdisk -c 1 320 809 524  :可以参考前面查看的信息格式化 
        fatformat mmc 1:1 
        ext3format mmc 1:2 
        ext3format mmc 1:3 
        ext3format mmc 1:4 
    2:  将bl1.bin, bl2.bin, u-boot.bin, tzsw.bin烧录到eMMC中 
        emmc open 1 :打开emmc文件 
        dnw  0x40000000  <-------------->    dnw E4412_N.bl1.bin 
        mmc write 1 0x40000000 0 0x10 
        dnw  0x40000000  <-------------->    dnw bl2.bin 
        mmc write 1 0x40000000 0x10 0x1C 
        dnw  0x40000000  <-------------->    dnw u-boot.bin 
        mmc write 1 0x40000000 0x30 0x21D 
        dnw  0x40000000  <-------------->    dnw E4412_tzsw.bin 
        mmc write 1 0x40000000 0x2c0 0xB8 
        emmc close 1

     bin文件路径 /home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412

          和  /home/bunfly/images/uboot_tiny4412
    3: 启动方式拨到emmc启动Uboot就成功 
     
    4: 写入Linux镜像 
        4412开发板端先搭好NFS网络文件系统保证能正常启动:
            #set bootargs console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.10:/home/kernel ip=192.168.1.20
            #save 
    开发板:                         PC端:
    fastboot  <--------------> fastboot  -w (注意:fastboot这个命令是我主机上的命令,如果不能运行要先安装再用 ./fastboot)
                          fastboot flash kernel zImage (先进入zImage目录/home/bunfly/source_code/linux-3.5/arch/arm/boot)
                          fastboot reboot
    movi read kernel 0 40008000
    bootm 40008000

    启动linux成功!(此时还是网络文件系统)


    5: 写入文件系统

     
        通过nfs挂载网络文件系统后 
        mount  /dev/mmcblk0p3  /mnt 
        将文件系统拷贝进去,然后解压
        cp /rootfs_qtopia_qt4-20131130.tar.gz /mnt
        进入mnt目录并解压,将里面的文件mv出来。

      
        设置权限:
        chmod 777 /mnt -R
        vi etc/init.d/rcS
        最后加入:
        /sbin/getty -L ttySAC0 115200 vt100
         
        进入uboot设置环境变量 
        set bootargs console=ttySAC0 root=/dev/mmcblk0p3 rootfstype=ext4 init=linuxrc uhost0=y ctp=2 
        save 
     
        然后重启OK!---到此SD卡和网线都可以拔掉啦。

  • 相关阅读:
    科学家质疑当今商用量子计算机的性能
    科学家研制出可模拟大脑信息处理的微芯片
    2014年电子科技市场衰退
    号外!CentOS 宣布加入红帽公司!
    hadoop,高富帅的玩具?
    成为Linux内核高手的四个方法
    分阶段事件驱动架构【SEDA】
    原型程式设计【原型语言】
    IOS7.1 企业应用 证书无效 已解决
    iOS7.1企业应用"无法安装应用程序 因为证书无效"的解决方案
  • 原文地址:https://www.cnblogs.com/lys0827/p/5806411.html
Copyright © 2011-2022 走看看