zoukankan      html  css  js  c++  java
  • uboot初步-01

    步骤:

    1、选择合适的uboot版本

    2、uboot修改

    3、交叉编译出bin文件

    4、烧写到SD卡或flash中

    uboot的版本选择
    在uboot中IP内核称为CPU 内核外围的各种外设称为broad


     可在S5PV210上参考使用的uboot版本:goni

    中断和异常的区别:

    中断可以被cpu忽略,但是异常必须被执行

    异常的优先级高于中断。

    异常的类型:

    1、undefined_instruction 未定义指令
    2、software_interrupt      软中断
    3、prefetch_abort            预取值中止
    4、data_abort                  数据中止
    5、irq                               普通中断
    6、fiq                                快中断

     uboot之SPL:
       u-boot基本大小在200KB左右,而S5PV210的内部SRAM只有96KB,因此将u-boot做为两个镜像:u-boot.bin   uboot_spl.bin。uboot_spl.bin(BL1)载入内部SRAM中运行(同时初始化外部SDRAM),然后将u-boot的大头u-boot.bin直接加载到外部SDRAM中,最后由内部SRAM跳转到外部SDRAM内存中u-boot.bin的首地址去运行。

     PL0(Privilege mode 0)    usr模式:处理器正常的程序执行状态
     PL1            sys模式
                  superviser模式
                  IRQ模式
                  FIQ模式
                  Abort模式(数据访问终止模式)
    PL2            Hyper模式
    制作uboot烧写镜像:
    1、编译文件:
    make S5P_goni_config
    make
    2、提取前16K内容:
    ./mkv210 u-boot.bin   u-boot.16k
    3、拷贝PC终端文件至SD卡指定位置:

    1 sudo dd iflag=dsync oflag=dsync if=u-boot.16k of=/dev/sdb seek=1
    2 //iflag:input flag   oflag:output flag
    3 //if :input file(源文件)       of:output file(目标文件)
    4 //seek=1   :从第一个扇区开始写入 

    在此也可以建立批处理文件来执行上面指令:新建文件bornSD.sh

    1  #!/bin/bash
    2 
    3 ./mkv210 u-boot.bin u-boot.16k
    4 sudo dd iflag=dsync oflag=dsync if=u-boot.16k of=/dev/sdb seek=1
    5 sudo dd iflag=dsync oflag=dsync if=u-boot.bin of=/dev/sdb seek=49

    之后修改文件模式为可执行:chmod a+x bornSD.sh。之后只需执行bornSD.sh即可执行上面三条指令。

    Linux环境下复制一个文件的一部分内容值另一个文件的方法:(A--->B)
    1、在源文件A的vim命令行下输入:”变量名行数yy“    如”a3yy“
    2、打开B文件                  ”变量名p“    如"ap"

    代码调试指令:objdump 、hexdump

    反汇编查看文件(输出C源代码和反汇编出来的指令对照的格式)  arm-linux-objdump -S  文件名

    在管道中查看:arm-linux-objdump -S 文件名|less


                      


      

  • 相关阅读:
    文件上传
    大三寒假学习进度笔记Day16
    大三寒假学习进度笔记Day15
    大三寒假学习进度笔记Day14
    大三寒假学习进度笔记Day13
    大三寒假学习进度笔记Day12
    大三寒假学习进度笔记Day11
    大三寒假学习进度笔记Day10
    Java命名规范
    架构漫谈阅读笔记03
  • 原文地址:https://www.cnblogs.com/embeded-linux/p/10146159.html
Copyright © 2011-2022 走看看