1,了解

  • print  查看UBOOT软件的环境变量       (变量名=变量)
  • setenv、saveenv  
    •   setenv abc 100 200   设置 添加一个变量值
    • 修改一个已有的变量值
    • setenv abc                删除这个变量
    •    saveenv   :把本次的设置的环境变量,写回存储器
  • nand 
    •   nand【动词】【内存地址】【nandflash内部地址】【搬移大小】
    • nand 中5M的空间读到41000000 ,读1K
    • 5M=5*1M    1M=2^20=0x100000
    • nand read 41000000 500000 1024
    • nand erase 500000 1024  (擦出命令)
    •      nand write 41000000 500000 1024

内核启动(启动参数、文件系统)

  • 启动参数 bootargs

root =     启动的跟文件系统在哪个设备 (设备信息  Ram   NFS  flash)

init  =      内核启动后,第一个可执行文件init进程从哪里来

console= 内核启动时,使用哪个设备作为控制台

  • 文件系统(NFS(调试)、Ramdisk)

Ram disk(模拟磁盘)

  • root=/dev/ram

    •  设备信息 initrd=0x41000000,8M(地址大于基地址+内核地址)
  • init=/linuxrc
  • console=ttySAC0

NFS (网络文件系统)

————————————————————————————————-————

2,uboot启动

1,SD卡启动

  1)虚拟机中。上传uboot的压缩包

  2)tar zxvf  命令解压

3)  进入第一层目录  make tiny4412_config   --> make 生成uboot.bin等文件

  4)  进入 sd_fuse   make 生成mkbl2 工具

  5)  进入tiny4412    可以看到bl2.bin  E4412_N.bl1.bin  E4412_tzsw.bin三个bin,其中bl2.bin在制作SD启动卡时会生成,我们也需要此文件

在此目录下,用root 执行./sd_fusing.sh  /dev/sdb即可(与裸板烧录相同)

2,烧进emmc  (主要可分为 分区,烧录)

  1)在虚拟机中完成。用minicom启动板子串口 ----进入uboot。

  2)输入mmcinfo 0\1 查看设备信息  (0 为SD卡,1为emmc ;SD卡为4-bit ,emmc为8-bit)

  3)   对emmc进行分区

    1.   fdisk -p 0\1 查看分区情况
    2. 输入 fdisk -c 1 320 2057 520   分区
    3. >fatformat mmc 1:1
              这句话意思是对mmc 1设备的第一分区格式作fat格式化。
              >ext3format mmc 1:2
              >ext3format mmc 1:3
              >ext3format mmc 1:4
             上面三个指令是分别对eMMC的分区2,3,4作ext3格式化。

  4)烧录bl1.bin, bl2.bin, u-boot.bin, tzsw.bin烧录到eMMC中(使用dnw 烧录)

    1.   uboot 下:> emmc open 1    (提示打开成功,一旦打开需要联系烧录,完后关闭emmc)
    2. uboot 下:> dnw   (等待数据传输)
    3. ubuntu 下:(进入uboot主目录)     > dwn sd_fuse/ting4412/E4412_N.bl1.bin
    4. uboot 下: 提示传输完成,> emmc wrinte 1 0xc0000000 0 0x10 

      开始第二部分
    5. uboot 下:> dnw   (等待数据传输)
    6. ubuntu 下:(进入uboot主目录)     > dwn sd_fuse/ting4412/bl2.bin
    7. uboot 下: 提示传输完成,> emmc wrinte 1 0xc0000000 0x10 0x1C

      第三部分   u-boot.bin
    8. uboot 下:> dnw   (等待数据传输)
    9. ubuntu 下:(进入uboot主目录)     > dwn u-boot.bin
    10. uboot 下: 提示传输完成,> emmc wrinte 1 0xc0000000 0x30 0x21D

      第四部分    E4412_tzsw.bin
    11. uboot 下:> dnw   (等待数据传输)
    12. ubuntu 下:(进入uboot主目录)     > dwn sd_fuse/ting4412/E4412_tzsw.bin
    13. uboot 下: 提示传输完成,> emmc wrinte 1 0xc0000000 0x2C0 0xB8
    14. uboot 下:emmc close 1

  5)至此,uboot烧写完毕,可以直接从nand flash 端进入

——————————————————————————————————————————————————————————

4412 uboot上手的更多相关文章

  1. Exynos 4412 Uboot源码解析

    原文地址:http://www.cnblogs.com/jacklu/p/6226330.html Exynos 4412 Uboot的汇编代码就不贴了,没有的可以私信我. 这是我当时阅读代码时的思维 ...

  2. jLink V8调试exynos 4412 u-boot的几点补充

    /** ****************************************************************************** * @author    Maox ...

  3. 如何在Ubuntu下使用TF/SD 卡制作Exynos 4412 u-boot启动盘

    /** ****************************************************************************** * @author    Maox ...

  4. 如何在Mac下使用TF/SD 卡制作Exynos 4412 u-boot启动盘

    /** ****************************************************************************** * @author    Maox ...

  5. 使用eclipse与jLink V8调试exynos 4412 u-boot

    /** ****************************************************************************** * @author    Maox ...

  6. 4412 uboot启动分析

    感谢sea1105, https://blog.csdn.net/sea1105/article/details/52142772 在学习过程中,由于tiny4412资料太过于少,因此参考210的视屏 ...

  7. uboot-tiny4412启动流程(下)----如何将自己的裸板测试程序加入uboot中启动测试

    今天在工作上搞了一天高通的芯片uboot程序,目的是希望将一个裸板的程序移植到uboot中,并且开机让它运行.这个芯片是NXP4330,目前是高通的一个芯片,基于ARM-contexA9架构,那么就跟 ...

  8. JLink V8初始化exynos4412脚本

    /** ****************************************************************************** * @author    Maox ...

  9. 复制SD启动卡 生成新启动卡

    在已经有1张SD卡启动卡的情况下,如何复制出一张新卡: 1. 使用软件DiskGenius4.8.0->硬盘->备份分区表 备份 源sd卡分区信息 2. 使用软件DiskGenius4.8 ...

随机推荐

  1. 剑指offer 1.数组 二维数组中查找

    题目描述 在一个二维数组中(每个一维数组的长度相同), 每一行都按照从左到右递增的顺序排序, 每一列都按照从上到下递增的顺序排序. 请完成一个函数, 输入这样的一个二维数组和一个整数,判断数组中是否含 ...

  2. DNS主从配置详解

    实验环境 主服务器:192.168.138.200 从服务器:192.168.138.201 bind安装 安装很简单,执行以下命令即可: yum install -y bind 先看一下bind的版 ...

  3. 秒懂,Java 注解 (Annotation)你可以这样学 - CSDN博客

    https://blog.csdn.net/briblue/article/details/73824058 文章开头先引入一处图片. 这处图片引自老罗的博客.为了避免不必要的麻烦,首先声明我个人比较 ...

  4. TCP TIME_WAIT过多的解决方法

    总结: 最合适的解决方案是增加更多的四元组数目,比如,服务器监听端口,或服务器IP,让服务器能容纳足够多的TIME-WAIT状态连接.在我们常见的互联网架构中(NGINX反代跟NGINX,NGINX跟 ...

  5. Java面试知识点

    (1) 关于finalize的问题:因为不可预测性,以及对垃圾回收性能的影响,Object.finalize()方法不推荐使用,并且在Java9中已经被废弃.Java 平台目前在逐步使用 java.l ...

  6. SQLSERVER创建该存储过程时不会出错,但是执行存储过程时报错

    创建该存储过程时,不会出错,但是执行存储过程时,会报出下面这样的错误 这是因为在存储过程创建时,它先做语法检查,如果通过了语法检查,它会尝试解析它包含的对象名,如果存在也会解析该对象引用的对象是否存在 ...

  7. python网页爬虫开发之五-反爬

    1.头信息检查是否频繁相同 随机产生一个headers, #user_agent 集合 user_agent_list = [  'Mozilla/5.0 (Windows NT 6.1; WOW64 ...

  8. How to identify safari in Mac?

    How to identify safari in Mac?in userAgent, find keywords below1) and: Macintosh, Mac OS X, AppleWeb ...

  9. python解决SyntaxError: Non-ASCII character '\xe6'

    出现情况,输入如下一个函数demo: run,报错: SyntaxError: Non-ASCII character '\xe6' in file /Users/XX/PycharmProjects ...

  10. Java 学习 UUID 与 时间格式化、时间操作

    UUID : UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分.其目的,是让分 ...