Subsystem History

From Linux i2c Wiki
Jump to: navigation, search

History of the i2c subsystem

This document lists the important changes that happened to the i2c subsystem over time. Device driver changes are purposely not listed. Changes are listed from newest to oldest.

Kernel version Changes
3.6
  • An unlocked flavor of function i2c_transfer was exported (commit).
  • SCCB support was added (1/2, 2/2).
3.5
  • Helper function i2c_verify_adapter was added (commit).
  • Support for I2C_M_RECV_LEN was added to i2c-dev (commit).
  • I2C_M_NOSTART support was split out of I2C_FUNC_PROTOCOL_MANGLING (commit).
3.3
  • The module_i2c_driver helper macro was added (commit).
3.2
  • Functions for byte-swapped SMBus Read/Write Word were added (commit).
  • Device name for 10-bit slave address was fixed (commit).
3.1
  • Function i2c_add_numbered_adapter was allowed to assign a bus id (commit).
2.6.39
  • Header file <linux/i2c-id.h> was deleted (commit) and i2c_adapter.id was dropped (commit).
  • The i2c_for_each_dev iterator was made available to drivers (commit).
  • i2c_driver.attach_adapter and i2c_driver.detach_adapter were deprecated (1/2, 2/2).
2.6.37
  • Function i2c_parent_is_i2c_adapter was changed to return the parent adapter (commit).
  • The I2C_CLASS_TV_ANALOG and I2C_CLASS_TV_DIGITAL flags were dropped (commit).
2.6.36
  • Support for custom probe functions was added (1/2, 2/2).
  • Support for multiplexed I2C bus topologies was added (commit).
2.6.35
  • User-space device lists are now handled per adapter (commit).
  • The same I2C device presence detection logic is used everywhere (1/2, 2/2).
2.6.34
  • Support for SMBus alert was added (commit).
  • Directory drivers/i2c/chips was emptied and deleted (commit).
    Configuration option I2C_DEBUG_CHIP was dropped (commit).
  • Pre- and post-transfer hooks were added to i2c-algo-bit (commit).
2.6.33
  • Probe, ignore and force module parameters were dropped (commit).
    Structure i2c_client_address_data was dropped (commit).
    The "kind" parameter of detect driver callbacks was dropped (commit).
  • The I2C_CLIENT_INSMOD_* macros were dropped (1/2, 2/2).
    The I2C_CLIENT_MODULE_PARM macro was dropped (commit).
  • Adapter locking moved to real-time mutex (commit).
2.6.32
  • I2C bus segments (i2c_adapter) were converted from class devices to bus devices (1/2, 2/2).
2.6.31
  • Support for instantiating I2C devices from user-space (using sysfs) was added (commit).
2.6.25
  • Migration to the standard device driver binding model was finalized (1/4, 2/4, 3/4, 4/4).
2.6.22
  • Migration to the standard device driver binding model was initiated (1/5, 2/5, 3/5, 4/5, 5/5).
2.6.21
  • Driver suspend/resume/shutdown support was added (commit).
Personal tools