u-boot源码整体框架

简介: 源码解压以后,我们可以看到以下的文件和文件夹:   cpu 与处理器相关的文件。每个子目录中都包括 cpu.c 和 interrupt.c、start.S、u-boot.lds。

源码解压以后,我们可以看到以下的文件和文件夹:

 

cpu

与处理器相关的文件。每个子目录中都包括 cpu.c

interrupt.cstart.Su-boot.lds

cpu.c 初始化 CPU、设置指令 Cache 和数据 Cache

interrupt.c 设置系统的各种中断和异常

start.S U-boot 启动时执行的第一个文件,它主要做最早其 的系统初始化,代码重定向和设置系统堆栈,为进入 U-boot

第二阶段的 C 程序奠定基础

u-boot.lds 链接脚本文件,对于代码的最后组装非常重要

board

已经支持的所有开发板相关文件,其中包含 SDRAM 初始化代

码、Flash 底层驱动、板级初始化文件。

其中的 config.mk 文件定义了 TEXT_BASE,也就是代码在 内存的其实地址,非常重要。

common

与处理器体系结构无关的通用代码,U-boot 的命令解析代码

/common/command.c、所有命令的上层代码 cmd_*.cU- boot 环境变量处理代码 env_*.c、等都位于该目录下

drivers

包含几乎所有外围芯片的驱动,网卡、USB、串口、LCD

Nand Flash 等等

disk

fs net

支持的 CPU 无关的重要子系统:

磁盘驱动的分区处理代码 文件系统:FATJFFS2EXT2

网络协议:NFSTFTPRARPDHCP 等等

include

头文件,包括各 CPU 的寄存器定义,文件系统、网络等等

configs 子目录下的文件是与目标板相关的配置头文件

doc

U-Boot 的说明文档,在修改配置文件的时候可能用得上

lib_arm

lib_avr32 lib_mips lib_nios lib_blackfin         lib_nios2 lib_generic        lib_ppc

lib_i386    lib_sh lib_m68k        lib_sparc lib_microblaze

处理器体系相关的初始化文件

比较重要的是其中的 board.c 文件,几乎是 U-boot 的所有架 构第二阶段代码入口函数和相关初始化函数存放的地方。

api examples

外部扩展应用程序的 API 和范例

 

nand_spl onenand_ipl

post

一些特殊构架需要的启动代码和上电自检程序代码

libfdt

支持平坦设备树(flattened device trees)的库文件

tools

编译 S-Record U-Boot 映像等相关工具,制作 bootm 引导

的内核映像文件工具 mkimage 源码就在此

Makefile

MAKEALL config.mk rules.mk

mkconfig

控制整个编译过程的主 Makefile 文件和规则文件

CHANGELOG

CHANGELOG-before-U-Boot-1.1.5

COPYING CREDITS MAINTAINERS README

一些介绍性的文档、版权说明

标为红色的是移植时比较重要的文件或文件夹。

 

相关文章
|
1月前
|
人工智能 JSON 前端开发
【Spring boot实战】Springboot+对话ai模型整体框架+高并发线程机制处理优化+提示词工程效果展示(按照框架自己修改可对接市面上百分之99的模型)
【Spring boot实战】Springboot+对话ai模型整体框架+高并发线程机制处理优化+提示词工程效果展示(按照框架自己修改可对接市面上百分之99的模型)
|
6月前
|
XML Java 数据格式
深入探究Spring核心模块
深入探究Spring核心模块
22 0
|
1月前
|
设计模式 Java 机器人
学习笔记之二《SpringBoot3-核心特性》
学习笔记之二《SpringBoot3-核心特性》
55 0
|
1月前
|
安全 Java 数据库连接
Spring整体简介
Spring整体简介
20 0
|
3月前
|
Java 数据库连接 Spring
Spring Boot常见企业开发场景应用、自动配置原理结构分析(二)
Spring Boot常见企业开发场景应用、自动配置原理结构分析
|
3月前
|
前端开发 Java 数据库连接
Spring Boot常见企业开发场景应用、自动配置原理结构分析(一)
Spring Boot常见企业开发场景应用、自动配置原理结构分析
|
3月前
|
安全 Java Maven
Spring Boot常见企业开发场景应用、自动配置原理结构分析(三)
Spring Boot常见企业开发场景应用、自动配置原理结构分析
|
3月前
|
JavaScript 前端开发 Java
深入探索Spring Boot的核心功能:快速构建原生程序响应式处理数据(文末送书)
深入探索Spring Boot的核心功能:快速构建原生程序响应式处理数据(文末送书)
29 0
|
9月前
|
XML Java 数据格式
Spring 核心类 ConfigurationClassPostProcessor 流程讲解及源码全面分析(二)
Spring 核心类 ConfigurationClassPostProcessor 流程讲解及源码全面分析(二)
51 0
|
6月前
|
缓存 安全 Java
Spring最佳实践: 构建高效可维护的Java应用程序
Spring最佳实践: 构建高效可维护的Java应用程序
49 0