社区
陈富军的课程社区_NO_1
基于RK3288 android 平台驱动开发
帖子详情
i2c驱动框架讲解
baidu_37552881
2023-01-13 02:19:21
课时名称
课时知识点
i2c驱动框架讲解
了解i2c驱动框架
...全文
174
回复
打赏
收藏
i2c驱动框架讲解
课时名称课时知识点i2c驱动框架讲解了解i2c驱动框架
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Linux
I2C
驱动
框架
(超详细)
Linux
I2C
驱动
框架
(超详细)一、几个重要的对象1、
I2C
总线2、
I2C
驱动
3、
I2C
设备4、
I2C
设配器二、内核源码分析1、注册
I2C
驱动
2、注册
I2C
设备 原文链接:https://blog.csdn.net/weixin_42462202/article/details/91128914 一、几个重要的对象 在讨论
I2C
驱动
框架
前,先讨论几个重要的概念 1、
I2C
总线 struct bus_type
i2c
_bus_type = { .name = "
i2c
", .match =
i2c
Linux内核的
I2C
驱动
框架
详解
目录1
I2C
驱动
整体
框架
图 2
I2C
控制器2.1
I2C
控制器设备--
I2C
控制器在内核中也被看做一个设备2.2
i2c
控制器
驱动
程序2.3 platform_driver结构体中的probe函数做了什么2.3.1 疑问:
i2c
dev_notifier_call函数哪里来的2.3.2 疑问:为什么有两个probe2.3.3 疑问:of_
i2c
_register_devices(adap);和bus_for_each_drv(&
i2c
_bus_type, NULL, adap, __process_n
编写一个通用的
i2c
设备
驱动
框架
本文详细介绍了Linux内核中的
I2C
驱动
框架
,包括核心结构体
i2c
_driver 和
i2c
_client 的功能和匹配机制。
I2C
驱动
通过
i2c
_driver 表示,设备通过
i2c
_client 结构体表示,二者通过设备树、名称匹配或ID表进行匹配。提供了创建和管理
I2C
设备客户端的几种方法。通过示例代码演示了如何编写
I2C
驱动
程序,并
讲解
了核心函数
i2c
_add_driver 的作用及其在
驱动
注册中的应用,
Linux
驱动
开发之
i2c
框架
讲解
到例程
本篇章在rk3399平台上,基于设备树的
i2c
驱动
开发。
i2c
直接使用硬件
i2c
总线,体系结构分为3部分:
I2C
核心、
I2C
总线
驱动
和
I2C
设备
驱动
。(
i2c
-core.c)提供了
I2C
总线
驱动
和设备
驱动
的注册、注销方法等。我们主要了解Linux中
i2c
的基本
框架
,分为和。主机
驱动
一般由芯片原厂开发,通常需要我们做的就是针对具体某个设备的设备
驱动
开发,硬件设备信息通过设备树描述。
【
驱动
】
I2C
驱动
分析(二)-
驱动
框架
I2C
驱动
属于总线-设备-
驱动
模型的,与
I2C
总线设备
驱动
模型相比,大体
框架
是一样,系统的整体
框架
如下所示。最上层是应用层,在应用层用户可以直接用open read write对设备进行操作,往下是设备
驱动
层,这个就是外围的比如一些用
I2C
总线连接到SOC的传感器或者EEPROM的
驱动
程序,这个一般由普通
驱动
工程师负责,再往下的
I2C
-Core是核心层,这个是Linux内核源码里面本来就有的,这里面主要是一些
驱动
和设备的注册函数以及
i2c
_transfer函数,
陈富军的课程社区_NO_1
1
社区成员
42
社区内容
发帖
与我相关
我的任务
陈富军的课程社区_NO_1
复制链接
扫一扫
分享
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章