linux 2.6.32 在arm9(s3c2440)平台的移植2 -- Kconfig和Makefile(2)

发布者:温柔的心情最新更新时间:2021-08-09 来源: eefocus关键字:linux  6  arm9  s3c2440  移植 手机看文章 扫描二维码
随时随地手机看文章

make menuconfig后,首先读入linux-2.6.32.2/arch/arm/Kconfig ???

sudu vi linux-2.6.32.2/arch/arm/Kconfig


(1)找到开头的mainmenu "Linux Kernel Configuration"source "这一行, 这是整个Configure树的根, 这一行匹配最后一个"带endmenu字样的行".再找到init/Kconfig"这一行, 可以看到该行之前的都是固定选项,不会出现在Configure可选选项的, 某个config的例子如下


config CONFIG_SYMBOL

        tristate "string" 或者 bool "string"

        default [y/n/m] if MACH_XXX2440

        depends on ARCH_ARM

        help


其中,CONFIG_SYMBOL字符可以在Configure菜单树中找到(按/就是搜索,类似vi), 并且还给出在数中的位置,但是如果在Configure菜单树搜索tristate/bool后面引号内的string,是搜不到的,


(2)搜索所有的menu "string" 的行, 这些都是Kernel Configure中的第一级目录,直到有endmenu字样的这一行结束.


   比如arm/Kconfig中有

   menu "Boot options" ... 最近的endmenu结束此层

   menu "CPU Power Management" ... 最近的endmenu结束此层

整个Kconfig看起来是这样的:

********Kconfig开始*******************

mainmenu "Linux Kernel Configuration"

##*以下是不可选择部分,

    config GENERIC_GPIO

bool    ##注释:这样的不可选

    config PAGE_OFFSET

        default 0xC0000000

##*以下是一级菜单的显示

   source "init/Kconfig" ## ???

    menu "System Type"

        ##常见的config,包括config_ID标识(对应Makefile里的字符), bool/tristate, depends on和default.

    endmenu

    menu "Boot options"

        ##...

    endmenu

##*以下是

source "net/Kconfig"

source "drivers/Kconfig"

source "fs/Kconfig"

********Kconfig结束*******************

(3)比如,移植过程中修改linux-2.6.32.2/arch/arm/mach-s3c2440/mach-mini2440.c中代码, 这部分代码对应Kernel Configure菜单树中的哪项 ?

vi linux-2.6.32.2/arch/arm/mach-s3c2440/Makefile &

vi linux-2.6.32.2/arch/arm/mach-s3c2440/Kconfig &

在Makefile中找到: obj-$(CONFIG_MACH_MINI2440) += mach-mini2440.o, 可知mach-mini2440.c编译出的.o文件的选项标识ID=MACH_MINI2440,

在Kconfig中找到: config MACH_MINI2440 的部分, 可以看到这个选项的显示字符是bool "FriendlyARM Mini2440 development board",

在Kernel Configure菜单树中,按/搜索MACH_MINI2440, 可以看到这个选项在:System Type -> S3C2440 Machines -> FriendlyARM Mini2440 development board,这样就找到了, 我们按照手册中修改mach-mini2440.c, 最后是要在这个选项里选择它, 然后保存在顶层的.config中, make内核的时候就会被链接进去了.

Kernel Configure菜单树中,按/搜索选项ID,也能列出此选项ID对应的Kconfig, 

格式: [Kernel Configure菜单树]:[对应Kconfig路径]

System Type ->MMU-based Paged Memory:/arch/arm/mach-s3c2440/Kconfig

System Type ->ADC common driver            :/arch/arm/plat-s3c24xx/Kconfig

System Type ->Force UART FIFO                 :/arch/arm/plat-s3c/Kconfig

System Type ->S3C2440 Machines             :

Device Drivers->I2C support        : /drivers/i2c/Kconfig

Device Drivers->Watchdog           : /drivers/watchdog/Kconfig

Device Drivers->Block devices      : /drivers/block/Kconfig

File systems->Miscellaneous        : /fs/Kconfig

File systems->Miscellaneous->YAFFS2  :/fs/yaffs2/Kconfig

File systems->Network File Systems     :/fs/Kconfig

File systems->Network File Systems->Root on NFS: /fs/nfs/Kconfig

关键字:linux  6  arm9  s3c2440  移植 引用地址:linux 2.6.32 在arm9(s3c2440)平台的移植2 -- Kconfig和Makefile(2)

上一篇:linux 2.6.32 在arm9(s3c2440)平台的移植 - LCD背光驱动
下一篇:linux 2.6.32 在arm9(s3c2440)平台的移植2 -- Kconfig和Makefile(2)linux

推荐阅读最新更新时间:2024-10-29 19:04

stm32程序下载不进去
今天在调试F429的discover板时,不小心把仿真的IO复用导致程序下载不进去。 我用的放置器是discover板自带的swd下载器,直接下载会显示找不到Cortex-M sw Device 当我按住复位键的时候却可以找到单片机,但是下载不进去。软件会报错“Could not stop Cortex-M Device!” 后来再技术群里面有人说是我错误吧下载IO口给复用了,照着他的方法最后把板子修好了 具体修复步骤如下: 1、把Boot0用10K电阻拉高 2、接上仿真器就会发现可以发现器件 3、随便下载一个可以用的程序,把以前的错误程序覆盖掉 4、把Boot0接地。一切ok!
[单片机]
Linux基金会发表EdgeX开源项目 看好物联网边缘运算平台
 2017年初,Linux基金会在德国汉诺威工业展(Hannover Messe)发表最新开源项目EdgeX Foundry,试图为边缘运算建立共同开源框架,进而简化并改良工业物联网(IIoT)计划。下面就随网络通信小编一起来了解一下相关内容吧。 EdgeX试图为边缘运算建立一个共同开源框架。 根据IoT Evolution报导,Linux基金会是全球开源社群的领头羊,宣布成立开源物联网项目EdgeX Foundry,以戴尔(Dell)为首数十家业者共襄盛举,戴尔预计贡献物联网堆栈软件FUSE,这是戴尔建立物联网网关和相关软件的重要成果。 FUSE项目始于2015年7月,试图建立高延展性的平台,方便客户设计物联网边缘运算方
[网络通信]
基于TDA4863-2的单级PFC反激LED电源设计与仿真
  LED是一个非线性器件,正向电压的微小变化会引起电流的巨大变化;LED是一个半导体二极管,其伏安特性随温度变化而变化(-2mV/℃),假如温度升高,在恒压驱动下LED的电流会增加。长期超过额定电流工作,会大大缩短LED的使用寿命。而LED恒流主要目的是当输入或输出电压变化时,确保其工作电流不变。为了保证LED产品的优势,针对不同功率段的LED电源,必须选择合适的拓扑结构使LED驱动电源达到高效率,高可靠性,满足安规, EMI 相关标准及低成本要求。对于15W-90W中小功率LED驱动电源通常选用结构简单的反激式拓扑。根据EN61000-3-2的C类标准,所有照明产品必须达到其要求,使得单级PFC反激架构在LED照明市场得到了迅
[电源管理]
基于TDA4863-<font color='red'>2</font>的单级PFC反激LED电源设计与仿真
S3C2440系统中断
1.1 S3C2440系统中断 CPU和外设构成了计算机系统,CPU和外设之间通过总线进行连接,用于数据通信和控制,CPU管理监视计算机系统中所有硬件,通常以两种方式来对硬件进行管理监视: l 查询方式:CPU不停的去查询每一个硬件的当前状态,根据硬件的状态决定处理与否。好比是工厂里的检查员,不停的检查各个岗位工作状态,发现情况及时处理。这种方式实现起来简单,通常用在只有少量外设硬件的系统中,如果一个计算机系统中有很多硬件,这种方式无疑是耗时,低效的,同时还大量占用CPU资源,并且对多任务系统反应迟钝。 l 中断方式:当某个硬件产生需要CPU处理的事件时,主动通过一根信号线 告知 CPU,同时设置某个寄存器里对应的位,CPU一旦
[单片机]
<font color='red'>S3C2440</font>系统中断
基于STM32的无人机陀螺仪应用详解
在无人机系统与地面站通信过程中,机载陀螺仪姿态数据的高速产生与外部相对低速的无线数据模块传输的矛盾日益突出,严重制约着无人机的发展。针对这一问题,采用FPGAFIFO作为高速数据缓冲,提出一种基于FPGA内建FIFO的无人机陀螺仪前级通信接口。通过高速异步FIFO缓冲,将无人机陀螺仪姿态数据经由FPGA准确无误地发送给地面站,显著提高数据传输质量,实现了高速芯片与低速设备之间的通信。整个设计在实际应用中效果良好,数据稳定可靠,满足了低误码率与高稳定性的要求,以及无人机与地面站高速通信的需求,有着广阔的市场应用前景。 无人机系统对于地面站发送的控制信号以及飞行器传回的姿态数据有着极高的实时性、可靠性与稳定性要求,这对无
[单片机]
基于STM<font color='red'>32</font>的无人机陀螺仪应用详解
IAP在stm32f103c8t6上的实现
手上的单片机是STM32F103C8T6,ROM容量是64KB,起始地址为 0x0800 0000;RAM容量是16KB,起始地址为0x0200 0000。开发环境是Keil5,用到的工具还有串口助手。我将待下载的程序生成为bin文件,再通过串口助手发送给单片机接收。 在设计IAP程序时,要考虑ROM和RAM的大小。一方面,APP程序下载到单片机时是存放在ROM中的,如果你想下载多个APP程序,肯定需要ROM大些;另一方面,在串口接收数据时,APP代码首先存在一个数组变量中,这需要占用很大的RAM。我的APP程序是一个简单的灯闪烁程序,仅为验证IAP可行。 首先要完成bin文件的生成: 第一步:
[单片机]
小米6更多猛料曝光 就是手绘图太辣眼睛
去年2月份,小米推出难产的小米5。时间过去一年多,小米似乎还没有推出新一代产品的意思。不过,官方消息虽然没有,但是民间爆料可不少!   近日,有网友在微博上曝光了一组疑似小米6的手绘图。从图中看,该机采用了金属机身(三段式设计很明显),后置时下流行的双摄。正面采用类似无边框的设计,屏幕下方搭载了一枚椭圆形物理按键,手机底部使用了USB Type-C接口。整体来看可信度不是很高,尤其是考虑到这辣眼睛的画风。   不过,该名网友还爆出了一些另外的猛料。小米6将会在4月份发布,拥有两个版本,新增小米6 Plus。配置上,5.15英寸版4GB RAM+32GB ROM起步,5.7英寸的小米6 Plus是4GB RAM+64GB ROM
[手机便携]
兆易创新GD32A7系列全新一代车规级MCU登场
9月25日消息,兆易创新GigaDevice今日宣布,重磅推出全新一代车规级MCU GD32A7系列。与上一代采用Arm® Cortex®-M4/M33的产品相比,GD32A7系列搭载了超高性能Arm® Cortex®-M7内核,提供GD32A71x/GD32A72x/GD32A74x等多款型号供用户选择。该系列产品集成了优异的性能、增强的安全升级以及丰富的外设接口,全面契合车身域控(BDC)、车身控制(BCM)、远程通信终端(T-BOX)、车灯控制(Lighting)、电池管理(BMS)、车载充电机(OBC)、底盘应用(Chassis)、直流变换器(DC-DC)等多种电气化车用场景,进一步拓展了兆易创新在汽车电子领域的产品布局
[汽车电子]
兆易创新GD<font color='red'>32</font>A7系列全新一代车规级MCU登场
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved