我现在正在诊断i2c1,目前是配置了i2c1,但是不知道哪一步没配,所以希望专家们列一下完整步骤,包括板文件等等,以方便我作对照,检查每一步。谢谢呢!
Jian Zhou:
\arch\arm\mach-omap2\Board-am335xevm.c中是初始化I2C 驱动的入口,i2c1_init()是初始化函数,嵌套调用\arch\arm\plat-omap\i2c.c中的 omap_register_i2c_bus(),omap_register_i2c_bus()首先调用i2c_register_board_info()将I2C总线上的设备信息加到info链表里,am335x_i2c1_boardinfo是传入的I2C设备信息,然后调用omap2_i2c_add_bus()建立I2C设备的platform_device。
leo chen:
回复 Jian Zhou:
看一下i2c1_init()这个函数的来龙去脉就可以了,怎么添加器件在Board-am335xevm.c中也是有例子的
Yaoming Qin:
您看下board file中的i2c已有的例子,记得查看下对应的时钟是否已经打开,以及i2c的从地址是否设置正确
TI中文支持网