linux的i2c驱动,设备树中添加24c02节点信息之后,找不到该节点导致驱动无法匹配

yjx774173329 2021-04-28 02:43:44
在设备树中加入24c02节点,如下图:

另外两个mpu6050和ap3216c器件都能在系统中找到相应的节点唯独24c20找不到,如下图:

0-001e为ap3216c的器件地址,0-0068为mpu的地址,唯独没有24c02。
其他两个的驱动都能匹配上设备,24c02因此匹配不上。

请问各位大佬,什么原因导致设备树中加入的24c02节点无效?
...全文
5531 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kyph 2021-05-18
  • 打赏
  • 举报
回复
.compatible = "atmel,24c02"
niepangu 2023-02-17
  • 举报
回复
@Kyph 我试过.compatible = "atmel,24c02"和.compatible = "24c02" 都可以正常工作,不知道为什么
melo_fang 2021-05-18
  • 打赏
  • 举报
回复
0xa0是从设备地址吧,不合理啊,你是不是左移了,这里应该是写7位的地址。 建议试下0x50
yjx774173329 2021-08-12
  • 举报
回复
@melo_fang 数据手册里就是a0,而且翻了一下之前32的代码也是a0
Reborn大侠 2021-12-06
  • 举报
回复
@yjx774173329 linxu iic驱动地址是7位,去除了读写位
yoveldf 2021-05-13
  • 打赏
  • 举报
回复
应该是dts里面写的不规范导致

1,317

社区成员

发帖
与我相关
我的任务
社区描述
主要是开发驱动技术
社区管理员
  • 驱动程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧