金牌会员
 
- 积分
- 1124
- 金钱
- 1124
- 注册时间
- 2019-1-5
- 在线时间
- 262 小时
|
发表于 2019-9-5 21:08:19
|
显示全部楼层
内核驱动的话,简单的一般是一个.c文件,一个kconfig文件和一个Makefile文件,kconfig是会在make menuconfig之后显示出来的东西,kconfig和Makefile需要和上级目录下的kconfig和Makefile文件关联;
移植LCD的驱动程序的时候要注意下,因为在内核,所以c库的函数就不能用了,像printf这样的, 要用printk替代,整合你的驱动程序;
将上面整合的驱动程序对应到file_operations结构体中,这就是给用户空间的接口;
在**__init初始化函数中,在这里面执行register_chrdev()函数,就是注册设备号和设备名还有连接上面的接口;
最后不要忘了在make menuconfig勾选添加的选项。
我的理解下大致思路就是这样的,你可以参考一下别的内核驱动程序,那些程序基本都一个套路,会很有帮助。
|
|