Main Page

From Linux i2c Wiki
(Difference between revisions)
Jump to: navigation, search
(User-space tools: Link to the new I2C_Tools page)
m (Work in progress)
 
Line 32: Line 32:
  
 
* Legacy binding model code is being removed. Most of it is gone already, with the exception of the <code>attach_adapter</code> and <code>detach_adapter</code> <code>i2c_driver</code> methods which are still used by three macintosh drivers (therm_pm72, therm_windtunnel and sound/ppc/keywest.) As soon as these remaining drivers are converted to the standard binding model, these methods can be removed.
 
* Legacy binding model code is being removed. Most of it is gone already, with the exception of the <code>attach_adapter</code> and <code>detach_adapter</code> <code>i2c_driver</code> methods which are still used by three macintosh drivers (therm_pm72, therm_windtunnel and sound/ppc/keywest.) As soon as these remaining drivers are converted to the standard binding model, these methods can be removed.
 
* Fix the I2C core to report a proper [[OF Modalias]] uevent.
 
  
 
== To-do list ==
 
== To-do list ==

Latest revision as of 10:34, 22 March 2018

[edit] Linux i2c Subsystem

This is the home of the Linux i2c subsystem.

Subsystem History

[edit] Theory of operation

[edit] Developer's documentation

[edit] User-space tools

User-space tools for I2C/SMBus are being maintained in the i2c-tools git tree. Released versions can be downloaded from https://www.kernel.org/pub/software/utils/i2c-tools/.

[edit] Work in progress

  • Legacy binding model code is being removed. Most of it is gone already, with the exception of the attach_adapter and detach_adapter i2c_driver methods which are still used by three macintosh drivers (therm_pm72, therm_windtunnel and sound/ppc/keywest.) As soon as these remaining drivers are converted to the standard binding model, these methods can be removed.

[edit] To-do list

  • The i2c-dev driver needs to be ported to the new i2c device driver binding model. See this discussion and this bug report.
  • i2c_adapter.retries and i2c_adapter.timeout need to be clarified. Their original intent was not necessarily good nor clear, but they could still be useful, if fault codes returned by adapter drivers are also clarified.
  • Exclusive access to bus segments or devices. The former can partly be done in-kernel since version 3.6 (i2c_lock_adapter / __i2c_transfer / i2c_unlock_adapter), but not using SMBus-level functions. Also the user-space case mentioned here is not supported yet.
  • The kernel should be able to prevent probing of specific I2C bus segments from user-space. Either by exposing the class flags and hoping user-space will pay attention and be fair, or by defining one more class flag for user-space access and enforcing it.
Personal tools