mbox series

[0/6] i2c: mpc: Refactor to improve responsiveness

Message ID 20210323043331.21878-1-chris.packham@alliedtelesis.co.nz
Headers show
Series i2c: mpc: Refactor to improve responsiveness | expand

Message

Chris Packham March 23, 2021, 4:33 a.m. UTC
The "meat" of this series is in the last patch which is the change that
actually starts making use of the interrupts to drive a state machine.
The dt-bindings patches can probably go in at any time. The rest of the
series isn't dependent on them.

I've tested it on a T2081 based system with a number of i2c and smbus
devices.  Its the end of my work day so I figured I'd get this out now
but I'll do some more testing on a P2041 board and a few different i2c
devices tomorrow.

Chris Packham (6):
  dt-bindings: i2c-mpc: Document interrupt property as required
  dt-bindings: i2c: convert i2c-mpc to json-schema
  i2c: mpc: Make use of i2c_recover_bus()
  i2c: mpc: make interrupt mandatory and remove polling code
  i2c: mpc: use device managed APIs
  i2c: mpc: Interrupt driven transfer

 .../devicetree/bindings/i2c/i2c-mpc.txt       |  62 ---
 .../devicetree/bindings/i2c/i2c-mpc.yaml      |  99 ++++
 drivers/i2c/busses/i2c-mpc.c                  | 513 ++++++++++--------
 3 files changed, 373 insertions(+), 301 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mpc.txt
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mpc.yaml

Comments

Chris Packham March 24, 2021, 3:43 a.m. UTC | #1
On 23/03/21 5:33 pm, Chris Packham wrote:
> The "meat" of this series is in the last patch which is the change that

> actually starts making use of the interrupts to drive a state machine.

> The dt-bindings patches can probably go in at any time. The rest of the

> series isn't dependent on them.

>

> I've tested it on a T2081 based system with a number of i2c and smbus

> devices.  Its the end of my work day so I figured I'd get this out now

> but I'll do some more testing on a P2041 board and a few different i2c

> devices tomorrow.


I've done more testing on a T2081 and P2041 board. Both look good.

I've had some feedback from Rob on the dt-bindings which I think I've 
got sorted now. I've got a couple of minor cosmetic changes to 6/6 but 
I'll hold fire on sending a v2 to give people a chance to look at the 
functional changes.

> Chris Packham (6):

>    dt-bindings: i2c-mpc: Document interrupt property as required

>    dt-bindings: i2c: convert i2c-mpc to json-schema

>    i2c: mpc: Make use of i2c_recover_bus()

>    i2c: mpc: make interrupt mandatory and remove polling code

>    i2c: mpc: use device managed APIs

>    i2c: mpc: Interrupt driven transfer

>

>   .../devicetree/bindings/i2c/i2c-mpc.txt       |  62 ---

>   .../devicetree/bindings/i2c/i2c-mpc.yaml      |  99 ++++

>   drivers/i2c/busses/i2c-mpc.c                  | 513 ++++++++++--------

>   3 files changed, 373 insertions(+), 301 deletions(-)

>   delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mpc.txt

>   create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mpc.yaml

>