当前位置:网站首页>使用设备树时对应的驱动编程
使用设备树时对应的驱动编程
2022-08-01 17:16:00 【InfoQ】
使用设备树时对应的驱动编程
使用"总线设备驱动模型"编写的驱动程序分为 platform_device 和 platform_driver 两部分
- platform_device : 指定硬件资源,来自.c 文件
- platform_driver : 根据与之匹配的 platform_device 获得硬件资源,并分配/设置/注册
file_operations
实际上 platform_device 也可以来自设备树文件.dts
- dts 文件被编译为 dtb 文件,
- dtb 文件会传给内核,
- 内核会解析 dtb 文件,构造出一系列的 device_node 结构体,
- device_node 结构体会转换为 platform_device 结构体
所以:我们可以在 dts 文件中指定资源,不再需要在.c 文件中设置 platform_device 结构体
"来自 dts 的 platform_device 结构体" 与 "我们写的 platform_driver " 的匹配过程
- "来自 dts 的 platform_device 结构体" 里面有成员 ".dev.of_node", 它里面含有各种属性,比如 compatible, reg, pin"
- 我们写的 platform_driver" 里面有员 ".driver.of_match_table", 它表示能支持哪些来自于
dts的 platform_device
- 如果 "of_node 中的 compatible " 跟 "of_match_table 中的 compatible" 一致,就表示匹配成功,则调用 platform_driver 中的 probe 函数;
- 在
probe函数中,可以继续从of_node中获得各种属性来确定硬件资源
边栏推荐
猜你喜欢
随机推荐
完全背包问题求组合数和排列数
SRM供应商管理系统如何助力口腔护理企业实现采购战略的转型升级
成为优秀架构师必备技能:怎样才能画出让所有人赞不绝口的系统架构图?秘诀是什么?快来打开这篇文章看看吧!...
谁还敢买影视股?
The untiy Resources directory dynamically loads resources
04 flink 集群搭建
LeetCode Week 303
银行案例|Zabbix跨版本升级指南,4.2-6.0不香吗?
二分练习题
Sftp中文件名乱码
GridControl helper class for DevExpress
创造建材数字转型新视界,中建材如何多边赋能集团业务快速发展
关于2022年深圳市福田区支持高端服务业发展项目的申报通知
C#的DateTime帮助类
浅谈游戏音效测试点
Daily Yuxian Big Defeat
When custom annotations implement log printing, specific fields are blocked from printing
[供应链·案例篇]石油和天然气行业的数字化转型用例
Complete knapsack problem to find the number of combinations and permutations
插入排序 优化插入排序









