[PATCH v6 0/6] fsi: Add IBM I2C Responder virtual FSI master

From: Eddie James
Date: Wed Feb 22 2023 - 14:24:42 EST


The I2C Responder (I2CR) is an I2C device that translates I2C commands
to CFAM or SCOM operations, effectively implementing an FSI master and
bus.

Changes since v5:
- Make I2CR scom driver depend on I2CR FSI master

Changes since v4:
- Add I2CR scom driver and associated patches
- Use compatible strings for FSI drivers if specified
- Include aliased device numbering patch
- Restructure the trace events to eliminate holes

Changes since v3:
- Rework the endian-ness in i2cr_write
- Rework the tracing to include the i2c bus and device address

Changes since v2:
- Fix the bindings again, sorry for the spam

Changes since v1:
- Fix the binding document
- Change the binding name
- Clean up the size argument checking
- Reduce __force by using packed struct for the command

Eddie James (6):
fsi: Move fsi_slave structure definition to header
dt-bindings: fsi: Document the IBM I2C Responder virtual FSI master
fsi: Add IBM I2C Responder virtual FSI master
fsi: Add I2C Responder SCOM driver
fsi: Add aliased device numbering
fsi: Use of_match_table for bus matching if specified

.../bindings/fsi/ibm,i2cr-fsi-master.yaml | 41 ++++
drivers/fsi/Kconfig | 17 ++
drivers/fsi/Makefile | 2 +
drivers/fsi/fsi-core.c | 60 +++--
drivers/fsi/fsi-master-aspeed.c | 2 +-
drivers/fsi/fsi-master-ast-cf.c | 2 +-
drivers/fsi/fsi-master-gpio.c | 2 +-
drivers/fsi/fsi-master-hub.c | 2 +-
drivers/fsi/fsi-master-i2cr.c | 228 ++++++++++++++++++
drivers/fsi/fsi-master-i2cr.h | 24 ++
drivers/fsi/fsi-master.h | 3 +-
drivers/fsi/fsi-scom.c | 8 +
drivers/fsi/fsi-slave.h | 28 +++
drivers/fsi/i2cr-scom.c | 158 ++++++++++++
include/trace/events/fsi_master_i2cr.h | 109 +++++++++
15 files changed, 659 insertions(+), 27 deletions(-)
create mode 100644 Documentation/devicetree/bindings/fsi/ibm,i2cr-fsi-master.yaml
create mode 100644 drivers/fsi/fsi-master-i2cr.c
create mode 100644 drivers/fsi/fsi-master-i2cr.h
create mode 100644 drivers/fsi/fsi-slave.h
create mode 100644 drivers/fsi/i2cr-scom.c
create mode 100644 include/trace/events/fsi_master_i2cr.h

--
2.31.1