
Bootloader
漫步的风暴
敏于思而慎于言
展开
-
U-boot-2014.04移植到MINI2440(4) 第一启动阶段start.S等详细分析
u-boot的启动阶段分为两个,第一部分主要为start.S文件,帖子尽可能的分析了每一行代码的意思,查看了很多手册,分析的目的也是为了学习吧,写博客也是想给自己的学习留下点东西,这些东西网上其实很多,但是感觉看别人写的和字自己分析写一遍,差别好大。转载请注明出处,下面进入正题。第11行:#include //由kbuild自动生成,且不管#include //include下包含原创 2015-08-22 19:16:45 · 2191 阅读 · 0 评论 -
uboot中打开debug调试信息的方法
很简单,找到uboot的根目录/include/common.h中在这个位置定义一个DEBUG然后重新编译即可。#define DEBUG原创 2018-10-30 14:40:06 · 9694 阅读 · 0 评论 -
ZYNQ Uboot下修改保存环境变量地址的方法
uboot版本:2017.4板卡:自制zc706板卡修改文件路径:/include/configs/zynq-common.h修改内容为:CONFIG_ENV_OFFSET把这里的CONFIG_ENV_OFFSET修改为在QSPI的偏移地址即可,我这里是QSPI FLASH,因为默认是0xe000,在0地址开始的地方保存了boot.bin,每次保存环境变量,会破坏boot,...原创 2018-09-12 18:21:43 · 3225 阅读 · 0 评论 -
记一次ZYNQ板卡无法启动问题的调试过程
1.现象板卡上电无法从QSPI启动,板卡为调试板卡,没有复位系统,QSPI FLASH中已经烧写boot.bin,要成功启动,分为下面四个阶段,首先bootrom上电后会根据boot mode(由配置MIO的管脚电平组合决定,即跳线帽),从对应的启动介质中读取镜像,读取开始的时候会先读取头部信息,如果成功则才会load启动代码,将fsbl读到ocm运行,然后由fsbl去启动uboot。...原创 2018-08-17 09:43:41 · 21419 阅读 · 9 评论 -
2017年9月问题记录与总结——Ubuntu14.04下安装Xilinx_SDK编译zynq u-boot并制作BOOT.BIN(板卡ZC7045)
一、说明以下为需要的软件和源码:虚拟机:Vmware Workstation 12.0.1Linux发行版:ubuntu14.04 LTSU-boot:u-boot-xlnx-xilinx-v2017.4 下载地址:https://github.com/Xilinx/u-boot-xlnx根据需要下载需要的版本,我取的是tag里面的2017.4的版本。SDK:Xilinx_SDK_2017.4_1...原创 2018-02-09 17:10:18 · 2208 阅读 · 1 评论 -
Makefile语法规则教程
makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写make转载 2016-05-13 15:05:51 · 3632 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(2) Readme翻译分析
为什么要阅读README,我觉得是更加方便我们理解U-BOOT吧,尤其是在整体上的把握,当然,开发人员写了二十多万个字符,一共六千多行的README,里面有很多涉及到具体配置和使用的部分,其实这就是U-BOOT的使用说明书,这里着重关注几个部分部分,按照README的顺序,就当做英文阅读理解吧。1. 总结(summary)首先看看开发者对U-BOOT的定义:a boot loade原创 2015-08-21 15:26:31 · 1345 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(3) Makefile分析
u-boot2014.04 makefile分析,包括配置过程,编译过程,mkconfig,u-boot.lds分析原创 2015-08-21 15:32:17 · 1412 阅读 · 1 评论 -
U-boot-2014.04移植到MINI2440(1) 初步探索移植
u-boot2014.04初步移植到mini2440原创 2015-08-21 15:14:45 · 2215 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(9) nor flash启动和nand flash 启动
在mini2440上,nor flash启动和nand flash启动可以满足不同的需要,这里进行移植,nor的启动移植比较简单,因为不需要进行代码的重定向,nand的启动相对复杂,这里先从nor开始,进入正题: 一.修改支持nor flash启动 第一步:修改mini2440.h 在第27行: #define CO原创 2015-09-02 19:27:28 · 1946 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(11) 第二启动阶段分析
回顾一下u-boot启动其一阶段做了哪些事: 第一:设置CPU为SVC模式第二:关闭看门狗第三:关中断和子中断第四:设置时钟第五:MMU关闭,清除cache和TLB,使能地址对齐检查等第六:初始化SDRAM 在我前面的分析里,第一阶段的最后,通过bl _main,跳到了arch/arm/lib/crt0.S里面去了,从这里开始时第二阶段的入口,原创 2015-09-05 17:39:58 · 831 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(10) 移植nand flash保存环境变量、添加分区
一.保存环境变量到nand flash第一步:修改mini2440.h由于我们执行saveenv这个命令,然后保存环境变量,u-boot的命令都是在common下实现的,切进去执行gerp “saveenv” –nr ./*.c,查找出如下结果:这里出现了很多,打开Makefile:# environmentobj-y += env_attr.oobj-y += e原创 2015-09-04 15:51:45 · 1540 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(8) nand flash 读写支持移植
mini2440上有一个k9f2g08u0c,进行nand flash读写移植原创 2015-09-02 10:21:59 · 1503 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(7) nand flash datasheet及arm9控制寄存器分析
我的MINI2440上有一个256M的nand flash,后面我们需要从nand启动u-boot,然后引导加载内核,再挂载根文件系统,这里先对其做一个较为细致的认识。主要是硬件管脚定义,控制方式,处理器的控制寄存器对其做一个了解,因为现在市面上nand的用途比较广泛,数码相机,mp3都要使用,进入正题。 一.nand flash datasheeet在移植好的u-boot原创 2015-08-29 11:05:47 · 1882 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(6) DM9000网卡移植
MINI2440上有一个DM9000网卡,关于这部分的驱动其实是比较复杂的,但是u-boot对其支持比较好,我们在移植的时候只需要修改少量的代码。这部分的代码主要在u-boot/drivers/net/下以及mini2440.h。 一.修改mini2440.h首先看drivers/net/Makefile,打开,第18行:obj-$(CONFIG_DESIGNWARE_ETH) +原创 2015-08-25 09:29:31 · 1075 阅读 · 0 评论 -
U-boot-2014.04移植到MINI2440(5) Nor FLASH 读写支持移植
MINI2440有一个2M的NOR FLASH,NOR FLASH在MINI2440上其实是一个容量较小的ROM,不过它比NAND要好的地方在于可以执行代码。当开关打在nor的时候,就选择从NOR FLASH启动,NOR FLASH是直接映射到0x00000000地址上开始工作的。关于nor和nand的区别以及在mini2440上启动时候的差别请参看优快云上的帖子,分析的挺好,这里不赘述了。原创 2015-08-24 19:45:48 · 1558 阅读 · 0 评论 -
imx6ul:uboot-2013.10启动过程解析
1.源码结构分析 首先一个问题,老版本的u-boot是没有SPL这个文件的,新版u-boot开始包含SPL文件,原来u-boot启动比如放到nand中,在cpu内部有一个stepping stone,可以拷贝nand中的u-boot到ram中运行,然后u-boot自己再启动第二阶段在对应内存中好到系统的image启动。现在加了这个SPL之后,我的理解这是一个u-boot的loader。...原创 2018-11-03 13:46:27 · 2809 阅读 · 0 评论