All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 0/7] i2c: Add FSI-attached I2C master algorithm
@ 2018-05-29 22:24 Eddie James
  2018-05-29 22:24 ` [PATCH v7 1/7] dt-bindings: i2c: Add FSI-attached I2C master dt binding documentation Eddie James
                   ` (6 more replies)
  0 siblings, 7 replies; 23+ messages in thread
From: Eddie James @ 2018-05-29 22:24 UTC (permalink / raw)
  To: linux-i2c
  Cc: linux-kernel, devicetree, wsa, robh+dt, benh, joel, mark.rutland,
	gregkh, Eddie James

This series adds an algorithm for an I2C master physically located on an FSI
slave device. The I2C master has multiple ports, each of which may be connected
to an I2C slave. Access to the I2C master registers is achieved over FSI bus.

Due to the multi-port nature of the I2C master, the driver instantiates a new
I2C adapter for each port connected to a slave. The connected ports should be
defined in the device tree under the I2C master device.

Changes since v6
 - Remove spinlock for reset functionality; it's unecessary and doesn't work
   with the latest FSI core.
 - Use a mutex instead of a semaphore, and don't wait for timeout to get the
   lock.
 - Use usleeps instead of schedule_timeout; it's not worth the overhead when
   the wait should be very short in between sending the command and receiving
   the response.

Changes since v5
 - Fix reset functionality and do a reset after every transfer failure

Edward A. James (7):
  dt-bindings: i2c: Add FSI-attached I2C master dt binding documentation
  drivers/i2c: Add FSI-attached I2C master algorithm
  drivers/i2c: Add port structure to FSI algorithm
  drivers/i2c: Add abort and hardware reset procedures
  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

 Documentation/devicetree/bindings/i2c/i2c-fsi.txt |  40 ++
 drivers/i2c/busses/Kconfig                        |  11 +
 drivers/i2c/busses/Makefile                       |   1 +
 drivers/i2c/busses/i2c-fsi.c                      | 738 ++++++++++++++++++++++
 4 files changed, 790 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c-fsi.txt
 create mode 100644 drivers/i2c/busses/i2c-fsi.c

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2018-05-31 14:18 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-29 22:24 [PATCH v7 0/7] i2c: Add FSI-attached I2C master algorithm Eddie James
2018-05-29 22:24 ` [PATCH v7 1/7] dt-bindings: i2c: Add FSI-attached I2C master dt binding documentation Eddie James
2018-05-29 22:24 ` [PATCH v7 2/7] drivers/i2c: Add FSI-attached I2C master algorithm Eddie James
2018-05-29 23:27   ` Randy Dunlap
2018-05-29 23:42   ` Andy Shevchenko
2018-05-30 15:40     ` Eddie James
2018-05-29 22:24 ` [PATCH v7 3/7] drivers/i2c: Add port structure to FSI algorithm Eddie James
2018-05-29 23:19   ` Andy Shevchenko
2018-05-30 15:47     ` Eddie James
2018-05-30 21:16       ` Benjamin Herrenschmidt
2018-05-31 14:18         ` Eddie James
2018-05-30 21:27       ` Andy Shevchenko
2018-05-30 21:28         ` Andy Shevchenko
2018-05-30 22:34         ` Benjamin Herrenschmidt
2018-05-31  6:21           ` Andy Shevchenko
2018-05-30 15:49     ` Eddie James
2018-05-29 22:24 ` [PATCH v7 4/7] drivers/i2c: Add abort and hardware reset procedures Eddie James
2018-05-30  0:20   ` Andy Shevchenko
2018-05-29 22:24 ` [PATCH v7 5/7] drivers/i2c: Add transfer implementation for FSI algorithm Eddie James
2018-05-30  0:08   ` Andy Shevchenko
2018-05-30 20:53     ` Eddie James
2018-05-29 22:24 ` [PATCH v7 6/7] drivers/i2c: Add I2C master locking to " Eddie James
2018-05-29 22:24 ` [PATCH v7 7/7] drivers/i2c: Add bus recovery for " Eddie James

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.