[PATCH linux dev-4.10 v2 0/6] drivers: i2c: FSI-attached I2C master algorithm

Eddie James eajames at linux.vnet.ibm.com
Thu May 11 01:52:36 AEST 2017

From: "Edward A. James" <eajames at us.ibm.com>

This patch series adds an I2C bus algorithm to drive the I2C master located on
POWER CPUs. The master is accessed over FSI bus from the service processor.

The driver creates one chardev entry for each port off an I2C master by
registering one I2C adapter for port. This implementation requires locking of
the master in the driver to prevent transfers running into each other. The
master registers are shared between ports.

This patchset also adds the latest in FSI dt bindings from Jeremy Kerr. This
describes the entire FSI tree structure (master -> slaves -> engines ->
engine data (such as i2c master ports)). These bindings are required for the
I2C driver in order to enumerate the ports off each I2C master.

Edward A. James (6):
  drivers: i2c: Add FSI-attached I2C master algorithm
  drivers: i2c: Add port structure to FSI algorithm
  drivers: i2c: Add transfer implementation for FSI algorithm
  drivers: i2c: Add I2C master locking to FSI algorithm
  drivers: i2c: Add bus recovery for FSI algorithm
  dts: aspeed: witherspoon: Add I2C master under FSI masters

 arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts | 156 ++++++
 drivers/Makefile                                 |   2 +-
 drivers/i2c/busses/Kconfig                       |  11 +
 drivers/i2c/busses/Makefile                      |   1 +
 drivers/i2c/busses/i2c-fsi.c                     | 654 +++++++++++++++++++++++
 5 files changed, 823 insertions(+), 1 deletion(-)
 create mode 100644 drivers/i2c/busses/i2c-fsi.c


More information about the openbmc mailing list