[PATCH linux dev-4.10 0/6] drivers: i2c: FSI-attached I2C master algorithm
Eddie James
eajames at linux.vnet.ibm.com
Fri May 5 06:52:59 AEST 2017
On 05/04/2017 03:08 PM, Eddie James wrote:
> 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 | 681 +++++++++++++++++++++++
> 5 files changed, 850 insertions(+), 1 deletion(-)
> create mode 100644 drivers/i2c/busses/i2c-fsi.c
>
I also have a new debug tool for this driver. The old iicmaster doesn't
work, and i2cset/i2cget don't work either, mainly because they don't
support 10 bit addresses.
https://github.com/eddiejames/iicmaster
Eddie
More information about the openbmc
mailing list