将自己的模块编译进入内核

来源:互联网 发布:java 选择 编辑:程序博客网 时间:2024/05/18 01:39
学习嵌入式linux必须能把自己的驱动模块编译进内核。它其实很简单,只需要改写两个文件就ok了,他们是:Kconfig和Makefile.
例如我写了一个led的驱动程序:
lanpeng@lanpeng-desktop:~/led$ ls
led.c   Makefile
lanpeng@lanpeng-desktop:~/led$ cat Makefile
 obj-$(CONFIG_LED_LAN) += led.o
lanpeng@lanpeng-desktop:~/led$ cd ..
lanpeng@lanpeng-desktop:~$ cp -fr led linux-2.6.27/drivers/char/
以上是将自己写的led驱动程序放到内核源代码的字符设备目录下(当然也可以放到其他设备目录下).
下面到关键部分了:
lanpeng@lanpeng-desktop:~/../drivers/char$ ls led/
led.c Makefile

在linux-2.6.27/drivers/char/目录下,我们要修改Kconfig文件。它在我们make menuconfig时会显示出我们要编译的设备文件。
打开Kconfig,在第二行添加如下信息:
config LED
    bool "lan peng's led"
    default y
    help
        lanpeng's led:echo '0'>/dev/cled,it will liang.echo '1'>/dev/cled,it will mie.
保存退出即可。
还在此目录下打开Makefile,添加如下行:
obj-$(CONFIG_LED_LAN)        += led/
保存退出即可。
make menuconfig一下,进入Device Drivers,在这个选项下,进入
Charater devices,在这下面就可以看到我们的驱动模块了:
[*]lan peng's led
阅读(417) | 评论(0) | 转发(0) |
0

上一篇:linux下的led驱动程序

下一篇:ARM指令系统

相关热门文章
  • asmlib无法加载
  • 基于VMware调试linux内核...
  • VMware下CentOS 6编译内核...
  • Linux内核初始化地图
  • Oracle 11g 密码失效问题...
  • linux 常见服务端口
  • 【ROOTFS搭建】busybox的httpd...
  • xmanager 2.0 for linux配置
  • 什么是shell
  • linux socket的bug??
  • 初学UNIX环境高级编程的,关于...
  • chinaunix博客什么时候可以设...
  • 一个访问量较大网站的服务器。...
  • 收音机驱动与v4l2架构的关系,...
  • 如何将linux驱动改为裸机驱动(...
给主人留下些什么吧!~~
原创粉丝点击