• tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中


    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卡和网线都可以拔掉啦。

  • 相关阅读:
    静态初始化块和main方法哪个先被执行?
    Java中的构造方法
    Java中的局部变量、成员变量和静态变量
    经典算法冒泡排序java版
    Java里数组的三种初始化方式
    聊天,发朋友圈可以不打字,但是表情怎么能少呢?那么如何用win10自带的微软拼音输入法打出表情呢?
    java打印实心10*10正方形, 空心10*10正方形
    安卓工程目录
    (1)开源中国android客户端源码分析
    认识电脑的开机流程与主引导分区(MBR)
  • 原文地址:https://www.cnblogs.com/luoxiang/p/4186391.html
Copyright © 2020-2023  润新知