gdt-A20

导航

2011年5月20日 #

linux设备模型之i2c子系统

摘要: ===============================本文系本站原创,欢迎转载!转载请注明出处:http://www.cnblogs.com/gdt-a20=============================== I2c子系统将i2c控制器(i2c寄存器所在的那块电路)抽象出来,用adapter(适配器)这个结构来描述,可以说一个适配器就代表一条i2c总线,而挂接在i2c总线上的设备是用client这个结构体来表述,另外i2c_bus上的设备链表挂接的不单单是连接的这条i2c上的client,同样adapter也作为一个设备挂在其所在的i2c_bus,也就是说控制器和设备都作为i 阅读全文

posted @ 2011-05-20 00:00 gdt-A20 阅读(6323) 评论(0) 推荐(1) 编辑

2011年5月18日 #

linux设备模型之platform

摘要: ===============================本文系本站原创,欢迎转载!转载请注明出处:http://www.cnblogs.com/gdt-a20=============================== platform可以说是内核抽象出来的一条虚拟总线平台,内核开发者原意是想把硬件层次上的结构关系用软件抽象模拟出来,但是对一些硬件,这样做往往不太合适,例如对于片上soc,外围设备的控制器都集成在处理器上,如果过度的剥离抽象,会使得原本物理上紧密的结构而在软件上变成的偏于独立,因此有了platform,对于联系紧密的soc这往往再合适不过,另外对于从soc上直接引出的引 阅读全文

posted @ 2011-05-18 14:18 gdt-A20 阅读(1660) 评论(0) 推荐(0) 编辑

2011年5月17日 #

linux设备模型之bus,device,driver分析二

摘要: ===============================本文系本站原创,欢迎转载!转载请注明出处:http://www.cnblogs.com/gdt-a20=============================== 上篇分析了bus,driver的注册过程,这篇主要分析device的注册,并总结给出个流程图。三、device的注册 还是照例先看一下device的结构: 1 struct device { 2 struct device *parent; 3 struct device_private *p; ... 阅读全文

posted @ 2011-05-17 16:40 gdt-A20 阅读(2251) 评论(0) 推荐(0) 编辑

linux设备模型之bus,device,driver分析一

摘要: ===============================本文系本站原创,欢迎转载!转载请注明出处:http://www.cnblogs.com/gdt-a20=============================== 内核的开发者将总线,设备,驱动这三者用软件思想抽象了出来,巧妙的建立了其间的关系,使之更形象化。结合前面所学的知识,总的来说其三者间的关系为bus有两条链表,分别用于挂接设备和驱动,指定了其自身bus的device或者driver最后都会分别连接到对应bus的这两条链表上,而总线又有其始端,为bus_kset,一个driver可以对应于几个设备,因此driver同样有其 阅读全文

posted @ 2011-05-17 02:15 gdt-A20 阅读(2835) 评论(0) 推荐(0) 编辑

2011年5月16日 #

关于linux设备模型kobject,kset,ktype

摘要: --------------------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://www.cnblogs.com/gdt-a20--------------------------------------------------------一、sysfs文件系统下的每个目录对应于一个kobj,kset是kobj的封装,内嵌了一个kobj,其代表kset自身,ktype代表属性操作集,但由于通用性,因此把ktype单独剥离出来,kobj,kset,ktype成为了各个驱动模型最底层的关联元素,并由此形成了sys 阅读全文

posted @ 2011-05-16 15:52 gdt-A20 阅读(2244) 评论(0) 推荐(1) 编辑