Re: [PATCH v2 0/8] devicetree cleanup for i2c muxes/arbs/gates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Mon, Aug 15, 2016 at 03:40:23PM +0200, Peter Rosin wrote:
> Hi!
> 
> The nxp pca9541 chip does not have any devicetree bindings.
> When trying to write such bindings matching the implementation,
> I stumbled upon something which I did not like. I had to
> give the node holding the i2c child bus a 'reg' property that
> is left unused and is really odd to explain from a devicetree
> point of view. It really is a leftover from the fact that linux
> implements i2c arbitrators (and i2c gates) using the i2c mux
> code. See this thread for history [1].
> 
> This series resolves the issues, and maintains backwards compat
> with old device trees (well, one could, in theory, create a
> device tree that would break with these changes, but my guess
> is that the odds for that happening inadvertedly are high...)
> 
> This should also help Crestez Dan Leonard with the mpu6050
> series containing the changes for its auxiliary i2c master [2],
> especially if you also consider the recent (very similar) changes
> from Jon Hunter that adds an optional 'i2c-bus' subnode [3].
> 
> If this is ok, I will follow up with patches for other drivers
> so that they inform the i2c mux core if they are muxes, arbs or
> gates. As stated, they will continue to work with these changes,
> so there is no huge rush.
> 
> The mux core does not really need to differentiate between
> arbitrators and gates. Should they be folded? What to call them
> in that case?
> 
> Changes since v1:
> 
> - Fixes and additions suggested by Rob Herring (3/8 still needs an ack).
> - Inserted patch 6/8 so that the two arb drivers support the new more
>   compact dt syntax.
> 
> Cheers,
> Peter
> 
> [1] https://lkml.org/lkml/2016/6/27/203
> [2] https://lkml.org/lkml/2016/5/18/355
> [3] https://patchwork.ozlabs.org/patch/641934/
> 
> Peter Rosin (8):
>   dt-bindings: i2c: add support for 'i2c-mux' subnode
>   dt-bindings: i2c: add support for 'i2c-arb' subnode
>   dt-bindings: i2c: add support for 'i2c-gate' subnode
>   dt-bindings: i2c: add bindings for nxp,pca9541
>   i2c: mux: add support for 'i2c-mux', 'i2c-arb' and 'i2c-gate' DT
>     subnodes
>   i2c: mux: inform the i2c mux core about how it is used
>   i2c: pca9541: add device tree binding
>   i2c: pca954x: add device tree binding

Applied to for-next, thanks!

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux