来源:Linux社区  作者:xiaojiang1025  :http://www.linuxidc.com/Linux/2017-02/141018.htm 和绝大多数源码编译安装一样,uboot的编译流程也类似于"make config->make->make install"**三步,只是由于uboot本身是针对多种平台的bootloader,软件的复杂性和通用型决定了编译uboot需要自行填补很多坑.本文主要讨论的就是移植uboot-2013.01的第一个坑——ub…
ref : https://www.cnblogs.com/xiaojiang1025/p/6106431.html 本人建议的uboot学习路线,先分析原有配置,根据现有的配置修改.增加有关的部分,添加自己的单板. 和绝大多数源码编译安装一样,uboot的编译流程也类似于"make config->make->make install"**三步,只是由于uboot本身是针对多种平台的bootloader,软件的复杂性和通用型决定了编译uboot需要自行填补很多坑. 本文主…
为uboot添加网卡功能可以让uboot通过tftp下载内核, 方便我们的开发, 对于网卡功能的移植,我们依然在在一遍又一遍的实践这个uboot改造的套路. 找运行逻辑,即插入代码的位置. 根据运行逻辑编写功能代码. 找配置逻辑,即修改哪些文件使配置生效. 根据配置逻辑修改配置使功能代码生效. 重新编译烧写uboot. 1. 找运行逻辑 为了实现ping.tftp下载.nfs挂载等功能,必须将uboot的网卡功能配置上,这个功能属于板级功能, 看README+经验+样板 需要在相应板级目录的xx…
ref:https://www.cnblogs.com/xiaojiang1025/p/6500532.html 为uboot添加网卡功能可以让uboot通过tftp下载内核, 方便我们的开发, 对于网卡功能的移植,我们依然在在一遍又一遍的实践这个uboot改造的套路. 找运行逻辑,即插入代码的位置. 根据运行逻辑编写功能代码. 找配置逻辑,即修改哪些文件使配置生效. 根据配置逻辑修改配置使功能代码生效. 重新编译烧写uboot. 1. 找运行逻辑 为了实现ping.tftp下载.nfs挂载等功…
经过了上一篇的配置,我们已经执行make就可以编译出一个uboot.bin,但这还不够,首先,此时的uboot并不符合三星芯片对bootloader的格式要求,其次,此时的uboot.bin也没有结合我们的开发板进行配置,还无法使用.而要进行这样的个性化配置,前提条件就是对uboot开机流程和编译系统有所了解,本文主要讨论前者.uboot是一个两阶段bootloader,第一阶段主要做硬件直接相关的初始化,使用汇编编写;第二阶段主要为操作系统的运行准备环境,主要用C编写,这里以ARM平台为例分析…
串口作为一种非常简单的通信方式,才是嵌入式系统调试的王道,通过设置串口输出,我们可以将程序运行的情况直接通过串口线输出到屏幕上,对于这种异常重要的功能,uboot原生就提供了支持,但为此我们需要做一些准备工作, 流程还是那套: 找运行逻辑,即插入代码的位置. 根据运行逻辑编写功能代码. 找配置逻辑,即修改哪些文件使配置生效. 根据配置逻辑修改配置使功能代码生效. 重新编译烧写uboot. 1. 找运行逻辑 通过(二)的分析, 我们了解到初始化串口的工作在BL2的"board/samsung/my…
前两篇介绍了uboot-2013.01的配置原理以及大体的运行流程,本文将讨论如何对uboot源码进行配置,将一个可用的uboot烧录到SD卡中. 定制自己的core board 市面上能买到的开发板的核心板基本都是基于官方参考板制作的,所以虽然标准操作是"定制"自己的core board,但鉴于我的板子的核心板是基于三星的参考板做的,所以我们做的主要工作就是按照(一)中的原理,编写(山寨)我们"自己的"核心板配置.我们需要的目录是"board/samsu…
ref : https://www.cnblogs.com/xiaojiang1025/p/6500520.html 串口作为一种非常简单的通信方式,才是嵌入式系统调试的王道,通过设置串口输出,我们可以将程序运行的情况直接通过串口线输出到屏幕上,对于这种异常重要的功能,uboot原生就提供了支持,但为此我们需要做一些准备工作, 流程还是那套: 找运行逻辑,即插入代码的位置. 根据运行逻辑编写功能代码. 找配置逻辑,即修改哪些文件使配置生效. 根据配置逻辑修改配置使功能代码生效. 重新编译烧写ub…
ref: https://www.cnblogs.com/xiaojiang1025/p/6436752.html 前两篇介绍了uboot-2013.01的配置原理以及大体的运行流程,本文将讨论如何对uboot源码进行配置,将一个可用的uboot烧录到SD卡中. 定制自己的core board 市面上能买到的开发板的核心板基本都是基于官方参考板制作的,所以虽然标准操作是"定制"自己的core board,但鉴于我的板子的核心板是基于三星的参考板做的,所以我们做的主要工作就是按照(一)中…
这一节主要讨论1个问题:点灯.点灯是实际开发中,特别是裸板开发中常见的调试手段,相当于主机开发中漫天飞舞的printf/printk.为了追踪程序的现场执行情况,很多时候我们都使用点一个灯的方法来进行初步的判断.如果你把刚才编译的程序烧录到SoC,你又怎么知道这个Uboot有没有工作呢?所以,我们在这里就要完成这样一个程序的改造. 虽说只是点一个灯, 但麻雀虽小五脏俱全, 也算是对uboot源码进行修改, 我总结了一点改造uboot的流程, 这一篇就按下面的改造流程来组织: 找运行逻辑,即插入代…