您的位置:首页 > 其它

i2c地址问题

2013-03-15 13:11 141 查看
       今天碰到一个tp的代码,在probe函数里面,如果检查i2c地址失败,则将i2c地址设为另一个,我始终没明白,后面

问了下写这个代码的人,才知道原来当probe如果执行不成功,那这个i2c地址就会被内核列入一个类似“黑名单”的地方,

如果下次再有驱动用这个i2c地址来注册时,内核就不会去执行。这样会导致一个问题,两个同类型的产品,如果使用

同样的i2c地址,这样就会导致一个的驱动加载不成功,另一个也加载不了了。所以他们在检查地址失败后,将i2c地址

设置为另外一个,这时候,内核就会将另外的那个设置为黑名单,这样就解决了上面的问题。实际毫无逻辑的代码,原来

还隐藏着这么多秘密,哈哈。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: