platform内核机制

platform内核机制

作者:guolele                                                                                                                              2011.1.21

         platform2.6内核新引进的虚拟总线,而且现在有很多设备驱动都是挂载在虚拟总线上,特别是帧缓冲设备都是建立在平台总线基础上,这也使得lcd等图形驱动也不可避免的使用平台总线,下面简单分析一下平台总线的机制。

首先先了解平台总线工作的结构。

这跟内核的设备驱动模型也是一样的,只是它包装了一下,platform总线是内核已经注册了的,我们不需要理它,它的匹配逻辑是名字相同,所以写驱动跟设备程序 时,要注意名字匹配。

驱动要做的事就是注册个平台驱动handler,有驱动了,也是需要设备的。

都完成了,应用程序怎么使用这些设备呢?这是我们也要弄清楚的。

应用层要调用设备,都是要操作设备文件或者叫设备节点,但是分析整个platform都是没有设备节点的创建,难道是自己手动创建?这么没效率的工作,内核当然不会这样做,使用平台总线的设备如果应用层并不能直接调用它,而是建立在其它类型设备中,用得比较多的是字符设备,例如帧缓冲的驱动程序里,设备文件/dev/fb0就是由帧缓冲注册函数负责创建的,应用层要调用lcd设备,就是直接文件操作/dev/fb0。下面上个图解析一下大概机制逻辑结构。

具体分析可看一下源码,这里我就不分析了,而lcd的主要工作就是基于内核有的s3c2410fb.c的驱动程序创建lcd的平台设备驱动。

奇怪了~~怎么在电脑里是透明的,在这就变黑了?我还画那么辛苦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值