您的位置:首页 > 运维架构 > Linux

linux内核的I2C子系统详解4——i2c-s3c2410.c文件中的adapter、algorithm

2017-12-17 19:34 302 查看
以下内容源于朱有鹏《物联网大讲堂》课程的学习,如有侵权,请告知删除。

主要分析i2c-s3c2410.c文件。

8、adapter模块的注册

(1)平台总线方式注册

因为I2C控制器属于内部外设。

(2)找到driver和device,并且确认其配对过程(在platform.c中由匹配函数来匹配);







(3)probe函数

9、probe函数分析

(1)填充一个i2c_adapter结构体,并且调用接口去注册之;

(2)从platform_device接收硬件信息,做必要的处理(request_mem_region & ioremap、request_irq等);

(3)对硬件做初始化(直接操作210内部I2C控制器的寄存器)

10、i2c_algorithm

(1)probe函数中有代码:i2c->adap.algo    = &s3c24xx_i2c_algorithm;



(2)s3c24xx_i2c_doxfer

信息传输函数





(3)functionality:表明I2C接口支持哪些特性。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: