1.建立Linux驱动骨架(装载和卸载Linux驱动)
Linux驱动程序需要提供两个函数来分别处理驱动初始化和退出的工作,用module_init和module_exit宏指定。
2.注册和销毁设备文件
使用misc_register创建设备文件,使用misc_deregister移除设备文件。
3.指定与驱动相关的信息
驱动程序是自描述的,需要在驱动源代码中指定。
4.指定回调函数
一个驱动程序并不一定要指定所有的回调函数;回调函数会通过相关机制进行注册
5.编写业务逻辑
业务逻辑可能由多个函数,多个文件甚至多个linux驱动模块组成
6.编写Makefile文件
7.安装和卸载Linux驱动
linux驱动程序以模块单独存在,需要使用insmod或modprobe命令装载linux驱动模块,使用rmmod命令卸载linux驱动程序
安装驱动:insmod .ko文件
卸载驱动:rmmod 模块名
一个完整的Linux驱动程序会指定这些与驱动相关的信息。一般需要为Linux驱动程序制定如下信息:
模块作者:使用MODULE_AUTHOR宏指定
模块描述:使用MODULE_DESCRIPTION宏指定
模块别名:使用DOUDLE_ALTAS宏指定
开源协议:使用MOUDLE_LICENSE宏指定
测试Linux驱动的步骤:
第一步:导入test-word-count.c文件
第二步:设置include路径
第三步:建立taget
第四步:Build工程
第五步:运行测试程序