V4:     - Added bus lock to i2c_dw_init() as suggested by Jarrko Nikula
          <[email protected]>. Addresses infrequent hang that was
          seen occuring during probe.
        - Added label in i2c_dw_xfer() to bypass unnecessary lock release when
          acquire fails. Suggested by Mika.
        - Changed make to build driver as composite addition to
          i2c-designware-platform. Driver can be module or built-in following
          the platform driver selection. Tested as both.
        - Added EPROBE_DEFER return to baytrail definition of i2c_dw_eval_lock()
          to defer probe if iosf_mbi driver (required for acquring bus lock) is
          not available.

V3:     - Split lock support and driver into separate patches
        - Change module build to bool. Platforms running without this driver
          cannot perform critical functions such as charging. Furthermore 
attempts
          by other drivers to access the i2c bus without a lock will hang the
          platform.
        - Replaced has_hw_lock flag with acquire/release function pointers.
        - Replaced acquire/release ifdef code with single
          i2c_dw_eval_lock_support() test for cleaner (if still undesirable)
          compile time scalability. Future Intel platforms will however continue
          to use the Baytrail driver.

V2:     - Moved semaphore detection out of dw platform driver
        - Replaced function pointers with defined acquire/release functions in
          dw core. This helps eliminate the ifdefery in the dw platform driver.
        - Use new has_hw_lock flag to check if the lock exists on a given bus.
        - Use new pm_runtime_disabled flag to conditionally turnoff runtime pm
          in the dw platform driver.

David E. Box (2):
  i2c-designware: Add i2c bus locking support
  i2c-designware: Add Intel Baytrail PMIC I2C bus support

 drivers/i2c/busses/Kconfig                   |  11 ++
 drivers/i2c/busses/Makefile                  |   1 +
 drivers/i2c/busses/i2c-designware-baytrail.c | 160 +++++++++++++++++++++++++++
 drivers/i2c/busses/i2c-designware-core.c     |  26 +++++
 drivers/i2c/busses/i2c-designware-core.h     |  12 ++
 drivers/i2c/busses/i2c-designware-platdrv.c  |  20 +++-
 6 files changed, 225 insertions(+), 5 deletions(-)
 create mode 100644 drivers/i2c/busses/i2c-designware-baytrail.c

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to