免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3975 | 回复: 3
打印 上一主题 下一主题

问一个设备驱动模型的问题 [复制链接]

论坛徽章:
0
1 [报告]
发表于 2011-04-22 09:13 |显示全部楼层
2.6的设备模型里是谁来注册device的?对应驱动代码里?那样的话把device和driver分开就没意义了吧。像platf ...
tempname3 发表于 2011-04-19 16:03



所有的操作都是driver完成,只是driver不同,
所有的driver执行都是由内核编译时将入口放置到一个特定的section中,排序执行

   
设备的发现和注册:基于ACPI描述,由ACPI的driver完成
其他具体设备的驱动在执行时查找本driver支持的设备,使得driver和deivce关联起来

论坛徽章:
0
2 [报告]
发表于 2011-04-22 10:21 |显示全部楼层
如果设备后于驱动出现在系统中,那表设备的device结构体是谁来创造与注册的呢?注册之后才能匹配到驱动 ...
tempname3 发表于 2011-04-22 09:34



   
两种情况:
1、hotplug:加了设备不重新启动,由hotplug机制负责添加设备、搜索驱动;
2、重启系统:这就简单了,BIOS会发现新的设备,将描述提交给OS,然后OS跟往常一样,。。。。。

论坛徽章:
0
3 [报告]
发表于 2011-04-22 10:35 |显示全部楼层
回复  chiwq

哦。也就是说,USB设备添加以后,hotplug层负责创建device并注册。PCI设备添加以后,BIOS自 ...
tempname3 发表于 2011-04-22 10:30



   
是这样的。

对于成熟的系统,第二种情况总是没有问题的,但是如果自己定制硬件系统,就可能需要自己做点事情,如:在OS里面自己给新设备的描述,

论坛徽章:
0
4 [报告]
发表于 2011-04-24 16:27 |显示全部楼层
回复  chiwq

谢谢了,我这边主要搞嵌入式的。实习布置我研究内核的I2C框架,看了一个星期总算明白了个大 ...
tempname3 发表于 2011-04-22 10:54



   
原来是这样啊,
I2C好像在ACPI或者BIOS描述中没有,
大概看了一个驱动,好像是基于南桥的PCI的配置空间进行发现、配置等操作的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP