linux静态编译一个驱动进内核(将驱动目录加入)
来源:互联网 发布:鲁西南大数据 编辑:程序博客网 时间:2024/05/21 22:41
一、准备好可以正常引导开发板的源码
二、在内核源码kernel文件夹的driver目录下,创建led_arm文件夹
mkdir drivers/led_arm
三、将“LED驱动实验”的驱动程序拷贝到led_arm目录下(详情见上一次LED驱动博客)
将led.c拷贝在该文件夹下面
Kconfig就是对应着内核的配置菜单。假如要想添加新的驱动到内核的源码中,可以通过修改Kconfig来增加对我们驱动的配置菜单,这样就有途径选择我们的驱动。
每个config菜单项都要有类型定义,bool:布尔类型, tristate三态:内建、模块、移除, string:字符串, hex:十六进制, integer:整型
例如config HELLO_MODULE
bool "hello test module"
bool类型的只能选中或不选中,tristate类型的菜单项多了编译成内核模块的选项,假如选择编译成内核模块,则会在.config中生成一个CONFIG_HELLO_MODULE=m的配置,假如选择内建,就是直接编译成内核影响,就会在.config中生成一个CONFIG_HELLO_MODULE=y的配置.
①添加一个Kconfig文件
- config MYLED
- tristate "MYLED"
- default n
- help
- this is a LED driver
②添加一个Makefile
- obj-$(CONFIG_MYLED)+=led.o
四、将我们编写的驱动支持选项增加进内核的配置菜单中。
修改drivers目录中的Kconfig文件
在最后一行添加语句
- source "drivers/led_arm/Kconfig"
五、修改drivers/Makefile文件
增加以下语句
obj-$(CONFIG_MYLED) += led_arm/
六、重新配置内核
在源码根目录输入
#make Menuconfig
可以在菜单的最后,看到我们新加入的MYLED选项。
0 0
- linux静态编译一个驱动进内核(将驱动目录加入)
- 驱动模块静态编译到 Linux 内核
- Linux驱动编译进内核-GPIO驱动
- 驱动编译进Linux内核
- 静态编译内核添加驱动(ARM7)
- arm开发板将驱动静态编译到linux内核镜像的步骤
- 怎样将驱动静态的编译到内核中。
- linux内核驱动编译
- 将自己的驱动编译进内核
- 将驱动编译到内核注意一个小问题
- Linux驱动模块编译进内核中
- Linux驱动模块编译进内核中
- Linux驱动模块编译进内核中
- Linux驱动模块编译进内核中
- Linux驱动模块编译进内核中
- 把驱动代码加入linux内核
- linux驱动之内核编译
- Linux 跨内核编译驱动
- 前端:两种实现带背景遮罩的弹窗写法
- 边缘检测——cvCanny算子
- 5555555555555555555555555
- 基于Autolayout的动画
- 5555555555555555555555555
- linux静态编译一个驱动进内核(将驱动目录加入)
- 5555555555555555555555555
- 网络客户端提示连接成功但是网页打不开(netsh winsock reset )
- 字符变量
- 正则表达式
- Linux进程间通信IPC的几种方式简介
- 关于模态视图和根视图器中传值的方式
- getopt和getopt_long函数
- 图片缩放