用于Beagle Bone Black的I2C Slave驱动程序

cst*_*ack 7 linux i2c beagleboneblack

我想在从机模式下使用Beagle Bone Black上的I2C总线.通过搜索,随机帖子的评论部分会提出问题,但从未回答是否可能.

它似乎使用从属模式I2C并不是Linux中的常见需求,但我在Android版本中找到了这个示例:https://android.googlesource.com/kernel/tegra/+/android-tegra-flounder-3.10-lollipop -release/drivers/i2c/i2c-slave.c和linux kernal网站上的这个文件:https://www.kernel.org/doc/Documentation/i2c/slave-interface.

我正在使用Debian Wheezy发行版,但无法在Linux内核文档中引用的Android文件或i2c-slave-eeprom驱动程序中找到引用.我只是使用太旧的内核吗?如何生成从模式驱动程序?

nw.*_*nw. 0

主线内核中 beaglebone 使用的 i2c 总线驱动程序 (i2c-omap.c) 仅支持主模式,但您可以使用此补丁添加从支持。修补驱动程序、使用 重建内核并将CONFIG_I2C_SLAVE其部署到您的 BBB 后,您应该能够很好地了解 Linux 中 i2c 从设备上的任何现有资源。

在总线驱动程序的支持下,所需要的只是一个后端 i2c 驱动程序来响应主设备的读写操作。i2c 从接口的内核文档(您已经找到)描述了您需要在后端驱动程序中实现的回调接口,您还可以查看i2c-slave-eeprom.c驱动程序作为示例。