linux-kernel - 在 Linux 中通过交换机配置 I2C 总线
问题描述
我的系统有以下简化示意图。
GPIO4
+-----------------------------+
| GPIO3 |
| +------------------------+ |
| | GPIO2 | |
| | +-------------------+ | |
| | | GPIO1 | | |
| | | +--------------+ | | |
| | | | | | | |
+-+--+--+--+-+ | | | |
I2C1 +-------------+ | | | | |
| | ++-+-+-++
I2C2 +-------------+ | I2C | |
| SWITCH +-----------+ CPU |
I2C3 +-------------+ | | |
| | +-------+
I2C4 +-------------+ |
+------------+
在 Linux 中实现/配置它的最佳方法是什么,为什么?是否有可能以某种方式在设备树中配置它,在用户空间中导出 4 个 i2c 设备,并且每当有人想要写入/读取这 4 个 i2c 总线之一时,相应的 GPIO 就会被断言?
是否只能在内核模块/驱动程序中实现?
解决方案
从评论:
有一个“i2c-mux-gpio”驱动程序可以帮助解决这个问题。– @Ian Abbott 2019 年 9 月 12 日 11:35
推荐阅读
- kubernetes - kubeadmin 用户可以创建超过 ClusterResourceQuota 硬限制的资源吗?
- tensorflow - TensorFlow:整个训练过程中的 CosineDifference ObjFunc 常量
- reactjs - 固定表布局与更新的值不匹配 - reactjs
- c - 如何在c中解析tcp数据包有效负载
- excel - 遍历范围的VBA搜索
- angular - 错误:BrowserModule 已加载
- swift - 如何编写一些正则表达式来查找子域并在 Swift 中替换值
- html - 文章网格没有一直延伸到边缘
- javascript - 如果我想在 HTML 中显示这样的表格,我应该如何在 Firebase 实时数据库中设计我的表格?
- java - JButton 在启动时不显示,但在鼠标悬停时显示