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. CRM项目之stark组件

    . stark也是一个app(用startapp stark创建),目标时把这个做成一个可以拔插的组件 . setting文件下INSTALLED_APPS 路径要配置好(app的注册) . 写好si ...

  2. Zuul权限检验

    一.达到的目标 /order/create 只能买家访问 /order/finish 只能卖家访问 /product/list 都能访问 二.创建User工程 1.创建user工程 选择的依赖 2.创 ...

  3. gdb调试嵌入式环境搭建

    1.下载gdb源代码 http://ftp.gnu.org/gnu/gdb/ 2.编译 解压#tar zxvf gdb-7.9.1.tar.gz,cd到解压的目录中. 2.1编译arm-linux-g ...

  4. 基于MNIST数据集使用TensorFlow训练一个没有隐含层的浅层神经网络

    基础 在参考①中我们详细介绍了没有隐含层的神经网络结构,该神经网络只有输入层和输出层,并且输入层和输出层是通过全连接方式进行连接的.具体结构如下: 我们用此网络结构基于MNIST数据集(参考②)进行训 ...

  5. 输入框UITextField禁止输入空格方法

    方法一:添加代理 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range rep ...

  6. 读写txt

    FileStream fileStr = new FileStream("shaftCofig.txt", FileMode.OpenOrCreate); StreamReader ...

  7. 关于CPU CACHE工作机制的学习

    转自:http://blog.csdn.net/notbaron/article/details/48143409 1.  存储层次结构 由于两个不谋而合的因素如下: l  硬件:由于不同存储技术的访 ...

  8. TCP的三次握手与四次挥手理解及面试题(很全面)

    序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生:给字节编上序号后,就给每一个报文段指派一个序号:序列号seq就是这个报文 ...

  9. Spring整体了解

      1.spring原理 内部最核心的就是IOC了,动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射,反射其实就是在运行时动态的去创建.调用对象,Spring就是 ...

  10. java并发编程目录

    java并发编程目录 Java多线程基础:进程和线程之由来 JAVA多线程实现的四种方式 Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition Jav ...