uboot 中的 config ,make config是怎么来的。

uboot makefile分析之 make xx_config linux混混之牢骚: 天天演穿越,天天演穿越……妈B,你就不知道穿越了告诉康熙:赶紧灭了东瀛,收复棒子,弄死西洋诸国,干死叶赫那拉氏族人?就你妈B知道玩三角恋? 至今台湾都没收复,让我终日郁郁寡欢的,姑娘们,你们就不能干点正事?   make mini2440_confi 阅读详情
 

根据顶层Readme文件的说明,可以知道如果要使用开发板board/<board_name>,就先执行“make <board_name>_config”命令进行配置,然后执行“make all”,就可以生成如下3个文件:

u-boot.bin:二进制可执行文件,它就是可以直接烧入ROM、NOR Flash的文件。
u-boot:ELF格式的可执行文件
u-boot.srec:Motorola S-Record格式的可执行文件。

 

对于S3C2410的开发板,执行“make smdk2410_config”、“make all”后生成的u-boot.bin可以烧入NOR Flash中运行。启动后可以看到串口输出一些信息后进入控制界面,等待用户的输入。

 

//========================

现在总结一下,配置命令“make smdk2410_config”,实际的作用就是执行“./mkconfig smdk2410 arm arm920t smdk2410 NULL s3c24x0”命令。假设执行“./mkconfig $1 $2 $3 $4 $5 $6”命令,则将产生如下结果:

(1)开发板名称BOARD_NAME等于$1;

(2)创建到平台/开发板相关的头文件的链接:

ln -s asm-$2 asm

ln -s arch-$6 asm-$2/arch

ln -s proc-armv asm-$2/proc# 如果$2不是arm的话,此行没有

(3) 创建顶层Makefile包含的文件include/config.mk。

ARCH = $2

CPU = $3

BOARD = $4

VENDOR = $5# $5为空,或者是NULL的话,此行没有

SOC = $6# $6为空,或者是NULL的话,此行没有

(4)创建开发板相关的头文件include/config.h。

/* Automatically generated - do not edit */

#include <configs/$1.h>"


从这4个结果可以知道,如果要在board目录下新建一个开发板<board_name>的目录,则在 include/config目录下也要建立一个文件<board_name>.h,里面存放的就是开发板< board_name>的配置信息。


U-Boot还没有类似Linux一样的可视化配置界面(比如使用make menuconfig来配置),要手动修改配置文件include/config/<board_name>.h来裁减、设置U-Boot。

配置文件中有两类宏:

(1)一类是选项(Options),前缀为“CONFIG_”,它们用于选择CPU、SOC、开发板类型,设置系统时钟、选择设备驱动等。比如:

#define CONFIG_ARM920T1/* This is an ARM920T Core*/

#defineCONFIG_S3C24101/* in a SAMSUNG S3C2410 SoC */

#define CONFIG_SMDK24101/* on a SAMSUNG SMDK2410 Board */

#define CONFIG_SYS_CLK_FREQ12000000/* the SMDK2410 has 12MHz input clock */

#define CONFIG_DRIVER_CS89001/* we have a CS8900 on-board */


(2)另一类是参数(Setting),前缀为“CFG_”,它们用于设置malloc缓冲池的大小、U-Boot的提示符、U-Boot下载文件时的默认加载地址、Flash的起始地址等。比如:

#define CFG_MALLOC_LEN(CFG_ENV_SIZE + 128*1024)

#defineCFG_PROMPT"100ASK> "/* Monitor Command Prompt*/

#defineCFG_LOAD_ADDR0x33000000/* default load address*/

#define PHYS_FLASH_10x00000000 /* Flash Bank #1 */

从下面的编译、连接过程可知,U-Boot中几乎每个文件都被编译和连接,但是这些文件是否包含有效的代码,则由宏开关来设置。比如对于网卡驱动drivers/cs8900.c,它的格式为:

#include <common.h>/* 将包含配置文件include/config/<board_name>.h */

……

#ifdef CONFIG_DRIVER_CS8900

/* 实际的代码 */

……

#endif/* CONFIG_DRIVER_CS8900 */

如果定义了宏CONFIG_DRIVER_CS8900,则文件中包含有效的代码;否则,文件被注释为空。

可以这样粗糙地认为,“CONFIG_”除了设置一些参数外,主要用来设置U-Boot的功能、选择使用文件中的哪一部分;而“CFG_”用来设置更细节的参数。

LEfSe分析避坑指南:如何解决R语言中的常见错误与优化结果可视化 本文提供了R语言中进行LEfSe(线性判别分析)微生物组差异分析的全流程避坑指南。详细解析了从数据格式准备、参数调优(如显著性水平与LDA阈值)、结果可靠性验证到使用ggplot2进行高级可视化的实战技巧,帮助用户规避常见错误,获得更稳健、美观的分析结果。 阅读详情

相关推荐

QTableView实现表格加载百万条数据

本文介绍用QTableView实现加载100万条数据显示到表格。 1.创建工程 用Qt Creator创建Qt Widgets Application项目,基类选择QWidget,创建好了,如图: 2.添加QTableView控件 在widget.ui中添加QTableView控件,和QPushButton,采用栅格布局,如图: 3.添加函数 头文件 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE class Wid

丁爸的博客 8270

U-Boot学习(2):U-Boot编译和.config配置文件生成分析

上一节中,介绍了如何使用U-Boot。我们知道一个U-Boot可能要适配不同的硬件,所以不同的硬件就有不同的配置,配置后就可以编译U-Boot,最终生成镜像。U-Boot如何编译,以什么规则编译,编译后下载到内存中的哪里呢,这一切都在Makefile中。所以本节课就来分析一下U-Boot的Makefile的结构。

主要分享嵌入式软件、人工智能部分知识 5248

Python头歌实验题目(2024版)

武汉理工大学头歌平台实验题目

2401_84152595的博客 2万+

uboot的配置(make xxx_config)和编译(make)工程解读

uboot编译三步走: make xxx_config make make install 第一步make xxx_config 这一步是产生板子的配置文件。 我们假设是配置ast2500evb板子,那么这里的配置命令就是 make ast2500evb_config uboot/Makefile 这里%_config中%表示通配任意字符,即匹配ast2500evb_config。 首先执行依赖target ‘unconfig’的命令:删除之前配置时产生的文件。 然后执行命令@$.

shaohui973的专栏 5713

RDD2022 数据格式转换与清洗

Rdd2022数据集,是关于道路损伤的数据集,与rdd2020相比增加了两万多张图片但是由于格式不能被yolo直接使用且其中有大量的图片没有符合要求的标注,特写此文章记录数据清洗与格式化的过程。

蓝胖子的博客 9946

图解目标检测 之 YOLO 算法 最全原理详解

YOLO 一.背景 YOLO(You Only Look Once: Unified, Real-Time Object Detection),是Joseph Redmon和Ali Farhadi等人于2015年提出的基于单个神经网络的目标检测系统。在2017年CVPR上,Joseph Redmon和Ali Farhadi又发表的YOLO 2,进一步提高了检测的精度和速度。 二.YOLO算法的网...

DFCED的博客 26万+

u-boot项目管理:.config的生成

1.输入命令 make zynq_defconfig 2.开始解析 ############ Makefile ################ %config: scripts_basic outputmakefile FORCE #scripts/basic 最终生成fixdep $(Q)$(MAKE) $(build)=scripts/kconfig $@ # 展开: @make -f $(srctree)/scripts/Makefile.build obj=scripts/kco.

lexiaoyao521314的博客 1559

tar解压报错 gzip: stdin: unexpected end of file tar: Unexpected EOF in archive

错误现象: [root@centos7-xinsz08 ~]# tar xf prometheus-2.7.2.linux-amd64.tar.gz gzip: stdin: unexpected end of file tar: 归档文件中异常的 EOF tar: 归档文件中异常的 EOF tar: Error is not recoverable: exiting now 错误原因排查 ...

互联网老辛 2万+

uboot中makefile的config的生成

原文:http://blog.chinaunix.net/uid-27664308-id-3326006.html 这个第n次看uboot-1.1.6-mini6410的makefile了,决定最后来一次系统的总结,并做一些记录,方便自己的同时,也 在网络上尽自己的一份力量,给初次接触uboot的看官们一些我的经验。  以tiny6410开发板和友善官方提供的uboot-1.1.6-mini

从ok6410开始 2715

79、昇腾系列服务器/昇腾系列推理卡/昇腾系列嵌入式开发板+Dify+one api部署DeepSeek-R1-Distill-Qwen-32BW8A8+RAG本地模型知识库和负载均衡双实例

阶段,安装过程缺什么,,在docker外面git下源码,进入容器内部进行量化,这里的容器建议在创建个8卡的容器,双卡容器量化会显示npu显存不够,除非你用cpu转模型,我就懒得创建容器了,使用cpu量化吧,巨慢;创建容器,进入容器,计划使用两张昇腾NPU卡推理DeepSeek-R1-Distill-Qwen-32B的W8A8模型,所以构建的容器用两张卡,选6、7卡吧,0-6号卡可以跑文本嵌入模型、重排序模型;直接进入量化阶段,在容器外面操作即可,环境不用管,因为系统已经默认配置了环境,直接跳到。

sxj731533730 6118

手把手教你学simulink实例--基于Simulink的航空发动机控制系统设计与仿真

航空发动机是飞机的核心动力装置,其性能直接影响飞行器的安全性、经济性和可靠性。现代航空发动机控制系统需要具备高精度、快速响应和强鲁棒性的特点,以适应复杂的飞行环境和任务需求。本项目旨在使用MATLAB/Simulink平台,设计并实现一种适用于涡扇发动机的闭环控制系统,通过调节燃油流量、压气机叶片角度等控制变量,确保发动机在不同工况下稳定运行,并满足推力需求。

MHD0815的博客 275

U-Boot学习(3):.config、defconfig文件对比及图形化配置Kconfig

1、在U-Boot的defconfig文件中,配置项之间存在依赖关系。当你在defconfig文件中启用或禁用某个配置项时,可能会触发相关的配置项引申或取消。在defconfig文件中,一些配置项可能有直接的依赖关系。这意味着启用或禁用一个配置项可能会导致与之直接相关的其他配置项的状态发生变化。这通常是通过配置项的名称来指定的。有些配置项可能存在间接的依赖关系。这意味着启用或禁用一个配置项可能会触发一系列的配置项状态变化,这些变化可能是由于其他配置项的依赖关系而产生的。所以在生成的.config。

主要分享嵌入式软件、人工智能部分知识 3835

把 ABAP writable CDS view entity 讲透:从只读建模到可写模型的 ABAP CDS 新能力

摘要:SAP引入的writable CDS view entity突破了传统CDS视图只读的限制,允许通过ABAP SQL直接进行数据修改。该特性通过WRITABLE关键字定义,使CDS视图成为与数据库表同等级别的可写对象。其核心价值在于为数据集成、中间层同步等场景提供结构化写入入口,但需注意不应绕过业务规则。最佳实践建议保持底层表结构简单映射,避免复杂变形。这一特性标志着CDS从单纯消费模型向双向数据交互能力的演进,为ABAP开发提供了新的数据边界设计思路。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1313

Linux之uboot入门(二)---make 100ask24x0_config

接着上一篇,在生成u_boot.bin文件之前。 需要先做make config: make100ask24x0_config 然后再make进行编译。 本篇我们主要讲一下make 100ask24x0_config 这条指令做了哪些事情。 1.首先看一下顶层的Makefile,当执行make 100ask24x0_config这条指令后, Makefile做了什么动作? 输入make 100ask24x0_config后,在Makefile中找到100ask24x0_config定...

shao15232的博客 477

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

uboot中进行make xx_config

如果进行了配置(make   xxx_config)则会生成两个新的文件: (1): uboot/include/config.h (2): uboot/include/config.mk      其中config.mk的内容如下(以优龙S3C6410-YLII开发板为例):      ARCH = arm      CPU = S3C64xx      BO

JRENSKY的专栏 698

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

uboot的make config操作

一种是在boards.cfg里面配置 另外一种是直接写到makefile里面 在boards.cfg里面配置 1 在boards.cfg里面配置新的开发板的数据。主要有 # Target                     ARCH        CPU         Board name          Vendor        SoC         Opt

groundhappy的专栏 2170

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

分析uboot中 make xxx_config过程

阅读目录 (1)建立软链接 (2)生成config.mk文件 (3)生成config.h 正文 make xxx_config实质上就是调用了 首先看MKCONFIG: 【注意】SRCTREE=源文件下的目录 之后的语句: @(MKCONFIG) (@:_config=) arm arm920t EmbedSky NULL s3c2440就相当于执行 #...

boyemachao的专栏 999

Uboot make config

 根据顶层Readme文件的说明,可以知道如果要使用开发板board/,就先执行“make _config”命令进行配置,然后执行“make all”,就可以生成如下3个文件: u-boot.bin:二进制可执行文件,它就是可以直接烧入ROM、NOR Flash的文件。 u-boot:ELF格式的可执行文件 u-boot.srec:Motorola S-Record格式的可执行

zhouxinlin2009的专栏 511

uboot 编译前的配置命令make config分析

在编译uboot前都要执行make config,这里以百问网提供的uboot为例(本人一直用韦东山老师的资料学习,确实讲得好),对照韦东山老师的视频,对make config过程谈一谈自己的理解。

闪耀大叔的博客 1135

uboot下make xxx_config的由来

uboot里需要执行 make CROSS_COMPILE=arm-xilinx-linux-gnueabi- zynq_me_config 但我并没有找到zynq_me_config这个文件,百思不解。 内核文件是包含在arch/arm/configs里,不过uboot似乎没有类似的路径。 OK,已解决。xxx_config并不是一个文件,首先 1、在\include\con

violet089的专栏 966

uboot:make xxx_config/xxx_deconfig的命令解析

make jz2440_defconfig分析: 查看Makefile中的匹配规则: %config: scripts_basic outputmakefile FORCE +(Q)(Q)(Q)(CONFIG_SHELL) $(srctree)/scripts/multiconfig.sh $@ scripts_basic: PHONY += scripts_basic scripts_basic: (Q)(Q)(Q)(MAKE) $(build)=scripts/b

默铭 576

uboot中 make xxx_config 的作用(以make smdk2410_config为例)

1、创建到目标板相关文件的链接 ln -s asm-arm asm ln -s arch-s3c24x0 asm-arm/arch ln -s proc-armv asm-arm/proc 2、创建include/config.mk文件,内容如下: ARM = arm CPU = arm920t BOARD = smdk2410 VENDOR = samsu...

weixin_30487317的博客 152

uboot之---make smdk2410_config命令详细解析

广工10 转载请标明来源:http://blog.csdn.net/shiyi_2012/article/details/7420459 随便找个uboot源代码就可以啦。   首先进入顶层Makefile。有很多相对不同板子的配置,如: gec2440_config:unconfig  @$(MKCONFIG) $(@:_config=) arm arm920t

shiyi_2012的专栏 8120

UBOOT之分析配置过程 make 100ask24x0_config

windows启动和嵌入式系统启动对比,bootloader的终极目的是启动内核。 分析配置过程 make 100ask24x0_config 打开顶层Makefile 我们在编译uboot是执行 make 100ask24x0_config 100ask24x0_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm920t 100ask2...

wmdshhzsmile的博客 640
上一篇: uboot传入的linux启动参数解析。命令行
下一篇: 总结一下U-Boot的编译流程,uboot
#Page#
博客等级 码龄23年 1691粉丝 360原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值