[PATCH v2 00/31] fsi: Interrupt support

Eddie James eajames at linux.ibm.com
Tue Feb 27 03:52:50 AEDT 2024


This series primarily adds interrupt support to the FSI driver subsystem.
The series first improves the clocking model in the FSI core to provide
real clock rates to the engine drivers. Then there are various quality,
trace, and organizational improvements.
Another substantial part of the series is to make some master code common
through the use of a regmap to access master structures. This will prove
more useful as additional FSI master drivers are added.
Finally, interrupt support is added to the I2C driver as an alternative to
polling.

Changes since v1:
 - Remove clock patches since those have been merged
 - Add AST2700 binding documentation
 - Fix build warning

Eddie James (31):
  fsi: Move slave definitions to fsi-slave.h
  fsi: Improve master indexing
  fsi: Use a defined value for default echo delay
  fsi: Expose master-specific local bus clock divider
  ARM: dts: aspeed: p10 and tacoma: Set FSI clock frequency
  fsi: core: Improve master read/write/error traces
  fsi: core: Add slave error trace
  dt-bindings: fsi: Add AST2700 compatible
  fsi: aspeed: Add AST2700 support
  fsi: core: Add slave spinlock
  fsi: core: Allow cfam device type aliases
  fsi: core: Add common regmap master functions
  fsi: hub: Use common initialization and link enable
  fsi: aspeed: Use common initialization and link enable
  fsi: aspeed: Remove cfam reset sysfs file in error path and remove
  fsi: aspeed: Refactor trace functions
  fsi: aspeed: Don't clear all IRQs during OPB transfers
  fsi: aspeed: Only read result register for successful read
  fsi: aspeed: Switch to spinlock
  fsi: aspeed: Disable relative addressing and IPOLL for cfam reset
  fsi: aspeed: Use common master error handler
  fsi: core: Add interrupt support
  fsi: aspeed: Add interrupt support
  fsi: hub: Add interrupt support
  i2c: fsi: Calculate clock divider from local bus frequency
  i2c: fsi: Improve formatting
  i2c: fsi: Change fsi_i2c_write_reg to accept data instead of a pointer
  i2c: fsi: Remove list structure of ports
  i2c: fsi: Define a function to check status error bits
  i2c: fsi: Add boolean for skip stop command on abort
  i2c: fsi: Add interrupt support

 .../bindings/fsi/fsi-master-aspeed.txt        |   2 +-
 .../boot/dts/aspeed/aspeed-bmc-opp-tacoma.dts |   1 +
 .../arm/boot/dts/aspeed/ibm-power10-dual.dtsi |   1 +
 drivers/fsi/Kconfig                           |   2 +
 drivers/fsi/fsi-core.c                        | 528 ++++++++++++++----
 drivers/fsi/fsi-master-aspeed.c               | 391 +++++++------
 drivers/fsi/fsi-master-hub.c                  | 231 ++++----
 drivers/fsi/fsi-master.h                      |  27 +
 drivers/fsi/fsi-slave.h                       |  89 +++
 drivers/i2c/busses/i2c-fsi.c                  | 464 ++++++++++-----
 include/linux/fsi.h                           |   3 +
 include/trace/events/fsi.h                    | 190 ++++---
 include/trace/events/fsi_master_aspeed.h      |  86 ++-
 include/trace/events/i2c_fsi.h                |  45 ++
 14 files changed, 1421 insertions(+), 639 deletions(-)
 create mode 100644 include/trace/events/i2c_fsi.h

-- 
2.39.3



More information about the linux-fsi mailing list