|
发表于 2020-9-6 19:13:04
18426 浏览 2 回复
关于驱动编写的几个问题请教
在学习4412驱动编写时产生的一些疑惑:
跟着视频驱动教程第一部分学习的时候,刚开始介绍了驱动的编写流程:在平台文件或是以module的方式注册设备(platform_device),然后注册驱动(platform_driver),然后在驱动注册的文件里的probe初始化函数中注册为杂项设备,然后添加设备节点。 后面又学习了字符驱动的编写:申请设备号,初始化cdev,注册cdev,生成设备类, 成圣设备节点, file_operations实现设备操作,驱动注销。
我想问的是:1. 只有编写杂项设备用的是platform虚拟总线的相关函数吗?就是说一般只有杂项设备用platform_device()和platform_driver()注册设备和驱动,字符设备驱动编写中并没用到这两个函数注册设备和驱动?
2.字符类设备驱动编写时需要先注册设备,再注册驱动吗,为什么我没看到注册设备的那个步骤,还是说申请设备号,初始化cdev,注册cdev,生成设备类, 成圣设备节点, file_operations实现设备操作,驱动注销这一套就包含了设备注册,驱动注册?
|
|
|
|
|
|
|
|
楼主|
发表于 2020-10-1 16:26:29
老师您好,看了视频后,我理解了一下,意思是教学视频一开始讲的杂项设备的驱动是用的平台总线的架构写的,后面的字符设备驱动是用的第一阶段最原始的架构写的,所以设备和驱动是混在一起的,是这个意思吗? |
|
|
|
|
|
|
登录或注册
扫一扫关注迅为公众号
|