首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未加载客户端驱动程序(无法注册I2C i2c -16)

未加载客户端驱动程序(无法注册I2C i2c -16)
EN

Stack Overflow用户
提问于 2017-01-05 00:42:34
回答 2查看 4.3K关注 0票数 0

我在i2c总线上有一些设备。我使用DTS作为探测驱动程序,但我不能探测其中一个驱动程序。具有地址(0x20)的设备内核向我发送消息:

i2c i2c-0: Failed to register i2c client mcp23017 at 0x20 (-16)

设备是mcp2301,我可以检测到它

代码语言:javascript
复制
 i2cdetect -y 0
 0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
 00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
 10: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 
 20: 20 UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 30: -- -- -- -- UU -- -- -- -- -- UU -- -- -- -- -- 
 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- UU 
 50: -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- -- 
 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 70: -- -- -- -- -- -- -- --  

如您所见,同一设备(0x21也是mcp2301)工作正常。

当我使用i2cget/i2cset时,我可以正确地控制这个设备(0x20)。我还尝试了在内核中使用i2cdebug。但没有什么有趣的-因为0x20设备的驱动程序没有探测(不进入探测函数)。

我尝试了mcp230xx驱动程序和我自己的驱动程序,两者的行为是相同的。

谢谢

更新:

Complet dts is here.My dts overlayhere。和initcall_debug here的dmesg。最后,here是我的驱动器(但我也尝试了gpio-mcp23s08.c驱动程序,但出现了相同的错误)。

内核3.10.17 CPU是arm-iMX6

EN

回答 2

Stack Overflow用户

发布于 2018-05-25 13:52:54

DTS包含两次相同i2c地址的驱动程序,或者第二次尝试将驱动程序手动分配给此i2c地址而不先解除绑定。在这两种情况下,dmesg中都会出现错误EBUSY (-16)。此外,如果某些内部驱动程序内核期望的服务结构丢失或不完整,则可能会将驱动程序分配给总线,但不会进行探测。在这种情况下,i2cdetect会将已经分配的驱动程序上的i2c地址显示为数字,而不是繁忙标志UU,并且不会输出任何probe消息。

票数 1
EN

Stack Overflow用户

发布于 2019-01-30 21:22:43

我认为您有多个具有相同地址的I2C客户端(如果我查看了正确的DTS):

您的客户端地址为0x20

代码语言:javascript
复制
adv7180@20 {
                compatible = "adv,adv7180";

然后再次使用地址0x20:

代码语言:javascript
复制
encoder@20 {
                compatible = "bustec,bt125_exp";

然后您有地址为0x18的客户端

代码语言:javascript
复制
tlv320aic3107@18 {
                compatible = "ti,tlv320aic3107";

和同样的地址:

代码语言:javascript
复制
            1w@18 {
                compatible = "dallas,ds2482";

这是有道理的,因为您有errno 16

代码语言:javascript
复制
#define EBUSY           16      /* Device or resource busy */
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41469028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档