2.1 编写基本的Linux驱动的一般步骤:
1)建立Linux驱动的骨架(装载和卸载Linux驱动);
2)注册和注销设备文件;
3)指定与驱动相关的信息;
4)指定回调函数;
5)编写业务逻辑;
6)编写Makefile文件;
7)编译Linux驱动程序;
8)安装和卸载Linux驱动。
对于一个Linux驱动程序,一开始可以在Ubuntu Linux上做前期开发和测试。对于访问硬件的部分也可以在Ubuntu Linux用软件进行模拟。当基本开发完成后,就需要在开发板或者工程样机上使用真实的硬件进行测试。最终还需要在最终销售的手机上测试。
2.2 将word_count目录加入Linux内核源代码树的步骤
1)建立新的Kconfig文件,在word_count目录中建立一个Kconfig文件,并输入如下内容:
config WORD_COUNT
tristate “word_count driver”
default y
help
This is a word count driver.It can get a word count from /dev/wordcount
2)修改Makefile 文件
3)修改上层目录的Kconfig
source “drivers/char/word_count/kconfig”
4)修改上层目录的Makefile文件
obj-$(CONPIG_WORD_count/
当修改Linux 内核设置后重新编译内核,以前使用该Linux内核编译的Linux驱动模块可能由于格式错误无法安装,因此,在重新编译Linux内核后,需要重新编译Linux驱动模块。
2.3 Linux驱动测试的方法
1)使用Ubuntu Linux测试Linux驱动
2)在Android模拟器上通过原(Native) C 程序测试Linux驱动
3)使用Android NDK 测试Linux驱动
4)使用Java代码直接操作设备文件来测试Linux 驱动
5)使用开发板测试Linux驱动:
在开发板上使用可执行程序测试Linux驱动
在开发板上使用.Android NDK测试Linux驱动
在开发板上使用Java代码测试Linux驱动
6)将驱动编译进Linux内核进行测试
第1步:将源文件文件放入Linux内核源代码
第2步:修改Kconfig文件
第3步:修改Makefile文件
第4步:设置.config文件
第5步:编译Linux内核