• Tiny4412 Uboot


    1. Build uboot

    a) 安装好toolchain (arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz)并设置好
    环境变量PATH,保证可以正常使用。

    b) 解压 uboot_tiny4412-20130729.tgz 并进入相应的目录
    tar xzf uboot_tiny4412-20130729.tgz

    c) 配置 uboot 并编译
    cd uboot_tiny4412
    make tiny4412_config
    make

    d) 编译 用于生成bl2 的工具
    make -C sd_fuse
    或者
    cd sd_fuse; make


    -----------------------------------------------------

    2. 制作启动 Tiny4412 的SD卡

    a) 先准备一张4G或以上的SDHC卡
    注意:该卡的已有数据将会被破坏,因此请先对SD卡上的数据进行备份。

    b) fusing SD card
    假设SD卡已被PC Linux识别为/dev/sdb, 以root用户运行以下命令即可:
    cd sd_fuse/tiny4412
    ./sd_fusing.sh /dev/sdb


    -----------------------------------------------------

    3. 使用SD卡启动 Tiny4412 并烧写Android

    a) 将已经制作好的SD卡插到 Tiny4412 板上,拨动S2切换到SDBOOT,同时连接
    串口线到PC且假设已经准备好。

    b) 开发板加电,然后在串口控制台(如minicom),按任意键进入uboot 命令行模式

    c) 对SD卡进行分区
    输入以下uboot命令即可对SD卡进行分区:
    fdisk -c 0 320 806 518 fdisk -c 0 320 2057 520
    重新分区后,可重新格式化FAT分区
    fatformat mmc 0:1

    d) 进入fastboot模式以烧写Android
    使用USB线连接Tiny4412的MICRO_USB口到PC,然后输入以下uboot命令:
    fastboot

    e) 烧写 Android 到SD卡
    首先请准备好Android image,包括: zImage, ramdisk-u.img, system.img
    在PC端输入以下命令进行烧写:
    fastboot flash kernel zImage (烧写kernel)

    fastboot -w (格式化userdata和cache)

    fastboot flash ramdisk ramdisk-u.img (烧写ramdisk)

    fastboot flash system system.img (烧写system)

    f) 也可以在PC端通过fastboot烧写uboot到SD卡
    先手动生成bl2.bin
    cd sd_fuse/tiny4412
    ../mkbl2 ../../u-boot.bin bl2.bin 14336

    然后输入以下命令:
    fastboot flash fwbl1 E4412_N.bl1.bin

    fastboot flash bl2 bl2.bin

    fastboot flash bootloader ../../u-boot.bin

    fastboot flash tzsw E4412_tzsw.bin


    -----------------------------------------------------

    4. 使用SD卡启动 Android

    a) 如果是使用HD700,则烧写完成后直接重启Tiny4412 即可自动启动 Android

    b) 如果是使用S700,则需要在uboot上设置kernel命令行参数:
    setenv bootargs console=ttySAC0,115200n8 androidboot.console=ttySAC0 lcd=S700
    saveenv
    然后重启Tiny4412即可。

    5.查看MMC设备的信息

    因为我的SD卡是8G的,Tiny4412板载的eMMC是4G的,所以可以看出 mmc 0就是我们的SD卡,mmc 1就是板载eMMC

    6.查看设备的分区信息

    在Uboot中可以通过fdisk命令来查看MMC设备的分区信息,以及对MMC设备进行分区,使用方法如下:

    ①其中fdisk -p 加上设备编号用来查看设备的分区信息

    其中设备1的的分区信息是友善的SuperBoot对设备进行的分区

    ②fdisk -c <device_num> [<sys.part size(MB)> <user data part size> <cache part size>]

    我们还可以通过上面的命令对MMC设备进行分区,例如

     fdisk -c 0 320 806 518

    通过fdisk命令的帮助手册,可以看出,上面的命令的含义是对MMC 0设备(即我们的SD卡)进行分区

    分别指定了system分区、userdata分区以及cache分区的大小

    对比SuperBoot对MMC1的分区信息

    system:608  userdata:2057  cache :520 

    所以可以仿照它对MMC0进行分区

    fdisk -c 0 608 2057 520

    分区完成后,可以使用fatformat命令重新格式化FAT分区

    命令的使用方法为

    这句话意思是对mmc 第 dev 号设备的第part分区作fat格式化

    例如:fatformat mmc 0:1

    则是对mmc 的第 0 号设备(我们的SD卡)的第一个分区作fat格式化

  • 相关阅读:
    linq 查询-“必须是可缩小的节点”
    在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。”
    将字符串转换为double类型的list
    mysql新增用户无法授权!? 解决方案
    eclipse项目有红色感叹号
    错误: 找不到或无法加载主类 java操作hbase出错
    org.apache.hadoop.conf.Configuration无法引用 解决方法
    jdbc的数据库驱动类DriverManager.getConnection()详解
    MySQL [Err] 1055--1064
    控制反转
  • 原文地址:https://www.cnblogs.com/CoderTian/p/5935363.html
Copyright © 2020-2023  润新知