=====Connect Core 6核心板I2C接口===== I2C总线(I2C bus,Inter-IC bus)是一个双向的两线连续总线,提供集成电路之间的通信线路。I2C总线采用一条数据线(SDA),加一条时钟线(SCL)来完成数据的传输及外围器件的扩展;对各个节点的寻址是软寻址方式,节省了片选线,标准的寻址字节SLAM为7位,可以寻址127个单元。I2C总线有三种数据传输速度:标准,快速模式和高速模式。标准的是100Kbps,快速模式为400Kbps,高速模式支持快至3.4Mbps的速度。 NXP i.MX6 CPU有三个最高可工作在400 Kbps的I2C总线,它提供完整的I2C功能,但Linux驱动中只包含I2C主机模式驱动。 在CC6的模块上,三个I2C总线接口: * I2C1没有使用 * I2C2在模块内部连接着PMIC和协处理器MCA * I2C3可被外设使用 在CC6单板机上,I2C3用于连接下面设备: * PCIe 扩展卡 * LVDS显示屏接口 * HDMI显示器接口 * MIPI显示屏接口 * 并口显示屏接口 * CSI摄像头接口 * 音频编解码接口 I2C3在CC6单板机上也提供了一个扩展连接器,以扩展外设连接。 ====I2C配置指南==== 用户可以通过内核配置选项IMX I2C interface (CONFIG_I2C_IMX)来管理I2C驱动支持。默认地,[[https://github.com/digi-embedded/linux/blob/v3.14/dey-2.0/maint/arch/arm/configs/ccimx6sbc_defconfig|CC6 SBC内核配置文件]]已经启用I2C驱动。 ====I2C驱动文件==== CC6模块的I2C总线驱动位于drivers/i2c/busses/i2c-imx.c。 ====设备树绑定和定制====