linux下platform device和Platform Driver的理解

[复制链接]
2892|1
 楼主| sqcumt123 发表于 2011-12-30 08:58 | 显示全部楼层 |阅读模式
很多人对platform device和Platform Driver认识不是很清楚,今天就给大家解释一下.

Platform_device和Platform_driver是从Linux 2.6起引入了一套新的驱动管理和注册机制,
Linux platform driver机制和传统的device driver 机制(即通过driver_register函数进行注册)相比,
一个非常明显的优势在于platform机制将设备本身的资源注册进内核,由内核统一管理. 内核统一管理这些资源后,
当驱动程序中需要使用这些资源时,可通过platform device提供的标准接口进行申请并使用。
这样,一方面在提高驱动独立性和资源管理独立性的同时,也使得驱动具有拥有较好的可移植性,
另外,由于这些标准接口是安全的,因此,这也使得驱动具有较好安全性。

从上面的分析,我们可以看出:对于那些与内核本身运行依赖性不大的外围设备,这些设备很多是那些不包含在最小系统之内的设备,如lcd,usb,uart等,都可以用platform_driver实现,原因是这些设备拥有各自相对比较独自的资源,如中断和地址,相对比较独立,这和Platform_device的意图想吻合,因此可以按platform_driver来实现,查看内核里面的源代码,我们可以看出,事实上,内核也是这么来做的.
爱之翼V 发表于 2011-12-30 16:03 | 显示全部楼层
多谢楼主如此详尽的解释,受教了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

88

主题

2107

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部