i2c地址问题
2013-03-15 13:11
141 查看
今天碰到一个tp的代码,在probe函数里面,如果检查i2c地址失败,则将i2c地址设为另一个,我始终没明白,后面
问了下写这个代码的人,才知道原来当probe如果执行不成功,那这个i2c地址就会被内核列入一个类似“黑名单”的地方,
如果下次再有驱动用这个i2c地址来注册时,内核就不会去执行。这样会导致一个问题,两个同类型的产品,如果使用
同样的i2c地址,这样就会导致一个的驱动加载不成功,另一个也加载不了了。所以他们在检查地址失败后,将i2c地址
设置为另外一个,这时候,内核就会将另外的那个设置为黑名单,这样就解决了上面的问题。实际毫无逻辑的代码,原来
还隐藏着这么多秘密,哈哈。
问了下写这个代码的人,才知道原来当probe如果执行不成功,那这个i2c地址就会被内核列入一个类似“黑名单”的地方,
如果下次再有驱动用这个i2c地址来注册时,内核就不会去执行。这样会导致一个问题,两个同类型的产品,如果使用
同样的i2c地址,这样就会导致一个的驱动加载不成功,另一个也加载不了了。所以他们在检查地址失败后,将i2c地址
设置为另外一个,这时候,内核就会将另外的那个设置为黑名单,这样就解决了上面的问题。实际毫无逻辑的代码,原来
还隐藏着这么多秘密,哈哈。
相关文章推荐
- MSP430F5438A I2C 从机无响应(地址设置问题)
- 完成lpc22xx 的I2C多字节子地址问题
- 烂笔头—I2C中的从/子地址问题
- Linux网络编程中的地址问题
- 关于51单片机中的RAM、SFR和位地址的问题
- IE内存错误,地址内存错误问题搜集和解决办法搜集 (逐步完善)
- BQ24250/BQ24251 充电管理芯片I2C 寄存器地址无法读写
- 用IHttpModule解决输入中文地址乱码问题(二)
- A20地址线问题
- jQuery Distpicker 解决用代码修改地址时遇到的问题
- 关于JOS 未对全部内存分页映射之前 物理地址映射问题的思考
- 避免Webpart Page的URL地址中带ID参数的问题
- 公网地址和私网地址问题
- 有关ie6,ie7设置iframe地址不刷新的问题
- WINCE物理和虚拟地址的问题
- 基类和派生类的地址问题
- 指针指向函数中的局部变量的地址的问题
- 关于DM6467由5150导致 I2C timeout问题
- socket编程小问题:地址已经被使用——Address already in use
- socket编程小问题:地址已经被使用——Address already in use