关于把驱动编译进内核的文章,网络上面非常多,但是,我今天实际操作了一下,按照网络上面的方法,还是会遇到不少的问题,遂总结如下:
一、 驱动程序编译进内核的步骤
在 Linux 内核中增加程序需要完成以下五项工作:
1. 将编写的源代码复制到 Linux 内核源代码的相应目录;
2. 在目录的 Kconfig 文件中增加新源代码对应项目的编译配置选项;
3. 在目录的 Makefile 文件中增加对新源代码的编译条目。
4.在该目录的上一级目录的Kconfig文件中把上面第二步修改的Kconfig包括到此Kconfig中。
5.在该目录的上一级MakeFile中修改下,使得可以编译到该目录。
(第四、第五步一般情况下,内核的架构已经搭好,不需要改动,但是如果是在相应的驱动目录新建新的目录,那么是一定要改动的,在实际操作中,可能还会遇到问题的,那么还要进一步检查上一级目录的Makefile和Kconfig,还有关于添加依赖的问题,有些目录是某个配置已经配置才会编译到,都要灵活处理)
下面我以在4412板子上面的经历作个总结。
我要在该板子上面porting蓝牙驱动,步骤如下:
1.首先将蓝牙驱动的c文件和h文件放置到driver/bluetooth 目录下面。
2.修改driver/bluetooth这个目录的中的Kconfig。我添加如下条目:
(待续)
原文:http://www.cnblogs.com/libs-liu/p/6264092.html