【Linux】系统移植篇四--uboot移植
系统移植篇四--uboot移植
- 一、uboot源码结构
- 1、uboot源码获取
- 2、uboot特点
- 3、uboot源码结构
- 二、uboot的配置与编译
- 1、uboot配置
- 2、uboot编译
前言:本篇主要介绍uboot的一些结构与相关配置,uboot是一款免费开源的芯片启动软件,代码完全开源,由于需要支持不同的芯片,导致代码内容庞大,因此对于初学者我们只需要知道其怎么配置移植就行了,不用关心具体实现,在往后工作中也会有芯片公司直接提供配置好的uboot文件。
关于华清远见的FS4412开发板uboot的配置下载:https://download.csdn.net/download/qq_51447215/85320025
一、uboot源码结构
1、uboot源码获取
uboot源码下载
http://www.denx.de/wiki/U-Boot/uboot版本命名
前期:uboot-版本号
现在:uboot-时间uboot版本选择原则
支持对应的硬件平台
相对成熟的版本(资料多)
2、uboot特点
- 代码结构清晰
- 支持丰富的处理器与开发板,易于移植
- 支持丰富的用户命令
- 支持丰富的网络协议
- 支持丰富的文件系统
- 支持丰富的设备驱动
- 更新活跃、用户较多、资料丰富
- 开放源代码
- 较高的稳定性
- 不具有通用性(不同的处理器、开发板uboot不可通用)
3、uboot源码结构
平台相关代码
即与CPU架构或开发板硬件相关的源码,硬件的改动对应的代码也需要进行修改
arch
: 与CPU架构相关的源代码board
: 与开发板相关的源代码,包含各种官方评估板对应的源码
平台无关代码
每个CPU通用代码,与CPU架构无关
- api: 应用接口
- common: uboot命令源码
- disk: 对磁盘设备的支持
- drivers: 设备驱动源码
- fs: 对文件系统的支持
- include: 头文件
- lib: 库
- net: 对网络协议的支持
- post: 上电自检程序
- 等
其它
配置文件、帮助文档、示例程序、工具等
- README: 说明文档
- doc: 帮助文档
- Makefile: 编译管理
- CREDITS: 开发者
- COPYING: 版权
- examples: 示例程序
- tools: 工具
二、uboot的配置与编译
1、uboot配置
- 指定当前使用的硬件平台
make <board_name>_config
注1:<board_name>为当前使用的开发板的名字
注2:执行该命令的前提是uboot源码支持该开发板
注3:该命令必须在uboot源码的顶层目录下执行
- 指定编译uboot源码
使用的编译器(arm或x86)
在uboot源码顶层目录下的Makefile中指定(CROSS_COMPILE变量)
2、uboot编译
- 编译uboot
make
注1:该命令必须在uboot源码的顶层目录下执行
注2:该命令执行后在uboot源码顶层目录下生成u-boot.bin
- 清除编译过程中生成的中间文件
make clean
make distclean
注1:该命令必须在uboot源码的顶层目录下执行
到这里就结束啦!
【Linux】系统移植篇四--uboot移植相关推荐
- imx6ull移植Linux系统第二篇——Linux内核的移植
imx6ull移植Linux系统第二篇--Linux内核的移植 花了大概两周的时间,把Linux的移植认真学了一遍,期间踩了不少坑,花费了不少时间去解决各种奇奇怪怪的问题,最终完成了uboot.系统镜 ...
- 嵌入式Linux系统中打印机驱动的移植
一.开发环境 硬件环境:DM365 打印机型号:HP P1007 虚拟机系统:Red Hat Enterprise Linux 5 交叉编译环境:Ti交叉编译环境安装包 二.详细步骤 1.下载Ghos ...
- 学着学着Linux系统写篇心得
2019独角兽企业重金招聘Python工程师标准>>> 学着学着Linux系统写篇心得 本学期对于linux系统的学习,和自己买的一本<linux就该这么学>这本书,让我 ...
- Linux系统编程(四)信号
Linux系统编程(四)信号 一.什么是信号? 1.信号的本质 2.信号来源 硬件来源 软件来源 二.常见信号 1.可靠信号和不可靠信号 2.不可靠信号主要有以下问题: 3.可靠信号与不可靠信号注册机 ...
- linux mpc boot 串口初始化,uboot移植阶段二--3串口终结篇
2011-03-20 23:00:37 前天U-boot移植串口后,能成功显示数据. 今天的主要目的是再次进行U-boot移植.看是否成功.花了40分钟,很顺利. 接着就是要把之前有问题的U-boot ...
- MT7621_移植篇(3) uboot编译+配置项分析
U-Boot("通用引导加载程序",通常简称为U-Boot)是一种开源的主引导加载程序,用于嵌入式设备中打包引导设备操作系统内核的指令.它可用于多种计算机架构,包括68k.ARM. ...
- tiny4412学习(一)之从零搭建linux系统(烧写uboot、内核进emmc+uboot启动内核)
硬件平台:tiny4412 系统:linux-3.5-20151029 文件系统:busybox-1.22.1.tar.bz2 编译器: arm-linux-gcc-4.5.1 目的: 使用uboot ...
- Linux系统入门篇(4)- Linux目录简介
文章目录 前言 一./boot 二./boot/efi 三./ 1. /bin- 所有用户的二进制命令目录 2. /etc - 配置文件目录 3. /dev - 设备文件目录 4. /proc - 进 ...
- 嵌入式Linux文件提取,嵌入式 Linux系统编程(四)——文件属性
嵌入式 Linux系统编程(四)--文件属性 一.文件属性概述 Linux 文件的属性主要包括:文件的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.文件属性示例如下 ...
- linux系统第一篇(Linux系统入门介绍)
Linux发展史 1.1操作系统是什么 操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,其他任何软件都必须在操作 ...
最新文章
- ArcServer for Java 讲座
- python创建csv文件并写入-【已解决】Python中创建和保存数据到csv文件中
- 《Java并发性和多线程介绍》-Java TheadLocal
- rmlv出错处理一例
- “超人”助阵,IE静音很简单
- 华为n3计算机在哪里,在华为nova3i中连接电脑的两种方法介绍
- 线性模型第3讲:Lasso方法
- 终于把W32.Spybot.Worm给消灭了(这个标题不能用了)
- 【C语言】猜拳小游戏代码实现
- 小布老师Oracle 9i DBA Fundamentals I视频讲座
- 总结:86版五笔输入法
- 计算机键盘快速指南,MagicBook热键/功能键切换指南,快捷键介绍
- nginx的配置优化
- 第一种单击事件方法 onCreate 1、先在按钮中添加onCreate单击事件 android:onClick=wlj/ 2、再在主函数MainActivity中添加自定义方法
- 《码农翻身》各章节阅读链接
- 【K-近邻】K-NN 实战分析 Facebook V Results: Predicting Check Ins
- python操作浏览器滚动条_python selenium webdriver处理浏览器滚动条
- 对坐标的曲线积分求做功_对坐标的曲线积分对弧长的曲线积分 二重积分
- OceanBase发布“珊瑚计划”,让合作伙伴成为OceanBase成功的关键
- Python实战:导出聊天记录分析你和你的对象聊了什么