当前位置:嗨网首页>书籍在线阅读

13-S3C6410 I2C总线驱动总体分析

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

15.5.2 S3C6410 I2C总线驱动总体分析

S3C6410的I2C总线驱动drivers/i2c/busses/i2c-s3c2410.c支持S3C24XX、S3C64XX、S5PC1XX 和S5P64XX处理器,在我们使用的2.6.28.6内核版本中,其名称仍然叫2410,显然是历史原因引起的。它主要完成以下工作。

(1)设计对应于i2c_adapter_xxxinit()模板的S3C6410的模块加载函数和对应于i2c adapter_xxx_exit()函数模板的模块卸载函数。

(2)设计对应于i2c_adapter_xxx_xfer()模板的S3C6410适配器的通信方法函数。

针对S3C24XX、S3C64XX、S5PC1XX和S5P64XX处理器,functionality()函数s3c24xxi2c func()只需简单地返回I2C_FUNC_I2C|I2C_FUNC_SMBUS_EMUL| I2C_FUNCPROTOCOL MANGLING表明其支持的功能。

图15.6给出了S3C6410驱动中的主要函数与15.3节模板函数的对应关系,由于实现通信方法的方式不一样,模板的一个函数可能对应于S3C6410 I2C总线驱动的多个函数。

P369_47559.jpg