mbox series

[0/6] introduce fwnode in the I2C subsystem

Message ID 20220318160059.328208-1-clement.leger@bootlin.com (mailing list archive)
Headers show
Series introduce fwnode in the I2C subsystem | expand

Message

Clément Léger March 18, 2022, 4 p.m. UTC
In order to allow the I2C subsystem to be usable with fwnode, add
some functions to retrieve an i2c_adapter from a fwnode and use
these functions in both i2c mux and sfp. ACPI and device-tree are
handled to allow these modifications to work with both descriptions.

This series is a subset of the one that was first submitted as a larger
series to add swnode support [1]. In this one, it will be focused on
fwnode support only since it seems to have reach a consensus that
adding fwnode to subsystems makes sense.

[1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/

Clément Léger (6):
  property: add fwnode_property_read_string_index()
  i2c: fwnode: add fwnode_find_i2c_adapter_by_node()
  i2c: of: use fwnode_get_i2c_adapter_by_node()
  i2c: mux: pinctrl: remove CONFIG_OF dependency and use fwnode API
  i2c: mux: add support for fwnode
  net: sfp: add support for fwnode

 drivers/base/property.c             | 48 +++++++++++++++++++++++++++++
 drivers/i2c/Makefile                |  1 +
 drivers/i2c/i2c-core-fwnode.c       | 41 ++++++++++++++++++++++++
 drivers/i2c/i2c-core-of.c           | 30 ------------------
 drivers/i2c/i2c-mux.c               | 39 +++++++++++------------
 drivers/i2c/muxes/Kconfig           |  1 -
 drivers/i2c/muxes/i2c-mux-pinctrl.c | 21 +++++++------
 drivers/net/phy/sfp.c               | 46 +++++++++------------------
 include/linux/i2c.h                 |  7 ++++-
 include/linux/property.h            |  3 ++
 10 files changed, 142 insertions(+), 95 deletions(-)
 create mode 100644 drivers/i2c/i2c-core-fwnode.c

Comments

Clément Léger March 18, 2022, 4 p.m. UTC | #1
In order to allow the I2C subsystem to be usable with fwnode, add
some functions to retrieve an i2c_adapter from a fwnode and use
these functions in both i2c mux and sfp. ACPI and device-tree are
handled to allow these modifications to work with both descriptions.

This series is a subset of the one that was first submitted as a larger
series to add swnode support [1]. In this one, it will be focused on
fwnode support only since it seems to have reach a consensus that
adding fwnode to subsystems makes sense.

[1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/

Clément Léger (6):
  property: add fwnode_property_read_string_index()
  i2c: fwnode: add fwnode_find_i2c_adapter_by_node()
  i2c: of: use fwnode_get_i2c_adapter_by_node()
  i2c: mux: pinctrl: remove CONFIG_OF dependency and use fwnode API
  i2c: mux: add support for fwnode
  net: sfp: add support for fwnode

 drivers/base/property.c             | 48 +++++++++++++++++++++++++++++
 drivers/i2c/Makefile                |  1 +
 drivers/i2c/i2c-core-fwnode.c       | 41 ++++++++++++++++++++++++
 drivers/i2c/i2c-core-of.c           | 30 ------------------
 drivers/i2c/i2c-mux.c               | 39 +++++++++++------------
 drivers/i2c/muxes/Kconfig           |  1 -
 drivers/i2c/muxes/i2c-mux-pinctrl.c | 21 +++++++------
 drivers/net/phy/sfp.c               | 46 +++++++++------------------
 include/linux/i2c.h                 |  7 ++++-
 include/linux/property.h            |  3 ++
 10 files changed, 142 insertions(+), 95 deletions(-)
 create mode 100644 drivers/i2c/i2c-core-fwnode.c
Andy Shevchenko March 18, 2022, 4:24 p.m. UTC | #2
On Fri, Mar 18, 2022 at 05:00:46PM +0100, Clément Léger wrote:
> In order to allow the I2C subsystem to be usable with fwnode, add
> some functions to retrieve an i2c_adapter from a fwnode and use
> these functions in both i2c mux and sfp. ACPI and device-tree are
> handled to allow these modifications to work with both descriptions.
> 
> This series is a subset of the one that was first submitted as a larger
> series to add swnode support [1]. In this one, it will be focused on
> fwnode support only since it seems to have reach a consensus that
> adding fwnode to subsystems makes sense.
> 
> [1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/

I have got two copies (?) of the series. I have no idea which one is correct.
So, please take care of it and send the version we are supposed to review.
Clément Léger March 18, 2022, 4:59 p.m. UTC | #3
Le Fri, 18 Mar 2022 18:24:05 +0200,
Andy Shevchenko <andriy.shevchenko@linux.intel.com> a écrit :

> On Fri, Mar 18, 2022 at 05:00:46PM +0100, Clément Léger wrote:
> > In order to allow the I2C subsystem to be usable with fwnode, add
> > some functions to retrieve an i2c_adapter from a fwnode and use
> > these functions in both i2c mux and sfp. ACPI and device-tree are
> > handled to allow these modifications to work with both descriptions.
> > 
> > This series is a subset of the one that was first submitted as a larger
> > series to add swnode support [1]. In this one, it will be focused on
> > fwnode support only since it seems to have reach a consensus that
> > adding fwnode to subsystems makes sense.
> > 
> > [1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/  
> 
> I have got two copies (?) of the series. I have no idea which one is correct.
> So, please take care of it and send the version we are supposed to review.
> 

Sorry for that, both are identical and were unfortunately provided
twice to git send-email...

I'll be more cautious next time.
Jakub Kicinski March 18, 2022, 5:02 p.m. UTC | #4
On Fri, 18 Mar 2022 17:00:46 +0100 Clément Léger wrote:
> In order to allow the I2C subsystem to be usable with fwnode, add
> some functions to retrieve an i2c_adapter from a fwnode and use
> these functions in both i2c mux and sfp. ACPI and device-tree are
> handled to allow these modifications to work with both descriptions.
> 
> This series is a subset of the one that was first submitted as a larger
> series to add swnode support [1]. In this one, it will be focused on
> fwnode support only since it seems to have reach a consensus that
> adding fwnode to subsystems makes sense.
> 
> [1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/

Sorry to jump ahead but would be great to split it up so that every
subsystem could apply its patches without risking conflicts, once
consensus has been reached.
Clément Léger March 21, 2022, 10:56 a.m. UTC | #5
Le Fri, 18 Mar 2022 10:02:01 -0700,
Jakub Kicinski <kuba@kernel.org> a écrit :

> On Fri, 18 Mar 2022 17:00:46 +0100 Clément Léger wrote:
> > In order to allow the I2C subsystem to be usable with fwnode, add
> > some functions to retrieve an i2c_adapter from a fwnode and use
> > these functions in both i2c mux and sfp. ACPI and device-tree are
> > handled to allow these modifications to work with both descriptions.
> > 
> > This series is a subset of the one that was first submitted as a larger
> > series to add swnode support [1]. In this one, it will be focused on
> > fwnode support only since it seems to have reach a consensus that
> > adding fwnode to subsystems makes sense.
> > 
> > [1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/  
> 
> Sorry to jump ahead but would be great to split it up so that every
> subsystem could apply its patches without risking conflicts, once
> consensus has been reached.

Hi Jakub,

Ok, to be clear, you would like a series which contains all the
"base" fwnode functions that I'm going to add to be sent separately
right ? And then also split i2c/net stuff that was sent in this series ?

Thanks,
Jakub Kicinski March 21, 2022, 6:36 p.m. UTC | #6
On Mon, 21 Mar 2022 11:56:34 +0100 Clément Léger wrote:
> Le Fri, 18 Mar 2022 10:02:01 -0700,
> Jakub Kicinski <kuba@kernel.org> a écrit :
> 
> > On Fri, 18 Mar 2022 17:00:46 +0100 Clément Léger wrote:  
> > > In order to allow the I2C subsystem to be usable with fwnode, add
> > > some functions to retrieve an i2c_adapter from a fwnode and use
> > > these functions in both i2c mux and sfp. ACPI and device-tree are
> > > handled to allow these modifications to work with both descriptions.
> > > 
> > > This series is a subset of the one that was first submitted as a larger
> > > series to add swnode support [1]. In this one, it will be focused on
> > > fwnode support only since it seems to have reach a consensus that
> > > adding fwnode to subsystems makes sense.
> > > 
> > > [1] https://lore.kernel.org/netdev/YhPSkz8+BIcdb72R@smile.fi.intel.com/T/    
> > 
> > Sorry to jump ahead but would be great to split it up so that every
> > subsystem could apply its patches without risking conflicts, once
> > consensus has been reached.  
> 
> Hi Jakub,
> 
> Ok, to be clear, you would like a series which contains all the
> "base" fwnode functions that I'm going to add to be sent separately
> right ? And then also split i2c/net stuff that was sent in this series ?

I'm mostly concerned about conflicts, so if you can get the entire
series into 5.18 before the merge window is over then consider it 
acked. If it doesn't make 5.18 looks like you'd need to send patches 
1 and 2 as a PR so that both the i2c and net trees can pull it. 
Once pulled send patch 6 out to net-next. Does that make sense?
Clément Léger March 22, 2022, 7:52 a.m. UTC | #7
Le Mon, 21 Mar 2022 11:36:34 -0700,
Jakub Kicinski <kuba@kernel.org> a écrit :

> > Hi Jakub,
> > 
> > Ok, to be clear, you would like a series which contains all the
> > "base" fwnode functions that I'm going to add to be sent separately
> > right ? And then also split i2c/net stuff that was sent in this series ?  
> 
> I'm mostly concerned about conflicts, so if you can get the entire
> series into 5.18 before the merge window is over then consider it 
> acked. If it doesn't make 5.18 looks like you'd need to send patches 
> 1 and 2 as a PR so that both the i2c and net trees can pull it. 
> Once pulled send patch 6 out to net-next. Does that make sense?

Yes totally, I guess I'll go for I2C only and then I'll move on with
next patches individually later. No need to hurry.