返回信息流看了看 kernel/Documentation/driver-model/ 下面的 platform和device
感觉还是不太明白
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #2704同步于 2008/11/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
讨论下 platform driver 和 device driver 的区别是什么?
seifer1983
2008/11/19镜像同步11 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
没太看明白标题是啥意思……
不过我的理解:
device.txt里面介绍了一下内核中driver使用的结构体的一般形式(定义)
platform.txt里面说的好像比较杂,但是里面提到了platform drivers,好像这个driver说的比较广义的,“一般比较简单和unstructured”,我想言外之意device driver是比较structured的了~
【 在 seifer1983 (Adam) 的大作中提到: 】
: 看了看 kernel/Documentation/driver-model/ 下面的 platform和device
: 感觉还是不太明白
请问写一个driver的时候,具体什么情况下注册device_driver,什么情况下注册platfrom_driver呢?
【 在 hobby 的大作中提到: 】
: 没太看明白标题是啥意思……
: 不过我的理解:
: device.txt里面介绍了一下内核中driver使用的结构体的一般形式(定义)
: ...................
这个……我还真不太清楚
注册设备驱动的我见过,但是那个platform_driver我没太了解过,可能说的是内核初始化过程中加载的那些driver?
【 在 seifer1983 的大作中提到: 】
: 请问写一个driver的时候,具体什么情况下注册device_driver,什么情况下注册platfrom_driver呢?
看到个链接
有兴趣可以了解下
http://www.diybl.com/course/6_system/linux/Linuxjs/200871/129585.html
platform应该是是2.6新提出的,目标是进一步细化操作系统不同的层次~~~
【 在 seifer1983 的大作中提到: 】
: 看了看 kernel/Documentation/driver-model/ 下面的 platform和device
: 感觉还是不太明白
platform 是一个bus的名称,是driver和device相关的,所有的driver和device都是属于某一个bus的,paltform这个就是把平台相关的东西都放到一起,整合为一个bus,在数据结构和注册probe等功能函数都又包装一层,加一点自己的功能,同时数据结构的初始化都放在arch/arm/mach-xxx下的某个文件里
这样的包装在结构上让驱动更清晰,使用更方便,理解却更难了
建议看看Documentation里的bus,device,driver以及porting 2.4 driverto 2.6的文档,看的时候结合一下2.6的代码就能看明白的
恩,顶
register platform_device 就是在 arch/arm/mach-xxx下
另外,在host crtller 注册的地方完成 register platform driver。这就是所谓的层层结构吧。
【 在 lester98 的大作中提到: 】
: platform 是一个bus的名称,是driver和device相关的,所有的driver和device都是属于某一个bus的,paltform这个就是把平台相关的东西都放到一起,整合为一个bus,在数据结构和注册probe等功能函数都又包装一层,加一点自己的功能,同时数据结构的初始化都放在arch/arm/mach-xxx下的某个文件里
: 这样的包装在结构上让驱动更清晰,使用更方便,理解却更难了
: 建议看看Documentation里的bus,device,driver以及porting 2.4 driverto 2.6的文档,看的时候结合一下2.6的代码就能看明白的