i2c子系统核心目录在kernel/driver/linux/i2c,i2c核心头文件在kernel/include/linux/i2c.h
在kernel/driver/linux/i2c中:i2c-core.c是包含i2c适配器、i2c驱动、i2c设备注册、注销以及i2c数据处理函数等核心操作的文件。
i2c-boardinfo.c是i2c静态声明i2c设备的文件
i2c-dev.c 是实现用户i2c设备驱动的文件
i2c-smbus.c 是实现smbus协议的扩展文件
busses 该目录是注册i2c适配器的平台相关文件,一般是通过platform设备驱动来实现注册的。
algos 该目录是实现i2c适配器算法的文件
大概总结下,未完待续。。。。