[PATCH v5 0/7] i2c: core: Move client towards fwnode

Andy Shevchenko posted 7 patches 8 months ago
drivers/i2c/i2c-core-base.c   | 61 +++++++++++++++++------------------
drivers/i2c/i2c-core-of.c     |  1 -
drivers/i2c/i2c-core-slave.c  | 12 ++++---
drivers/media/i2c/ds90ub960.c |  1 -
include/linux/i2c.h           |  2 +-
5 files changed, 39 insertions(+), 38 deletions(-)
[PATCH v5 0/7] i2c: core: Move client towards fwnode
Posted by Andy Shevchenko 8 months ago
The struct i2c_board_info has of_node and fwnode members. This is quite
confusing as they are of the same semantics and it's tend to have an issue
if user assigns both. Luckily there is only a single driver that does this
and fix is provided in the last patch. Nevertheless the series moves
the client handling code to use fwnode and deprecates the of_node member
in the respective documentation.

In v5:
- reformatted conditionals to make media CI happy (media CI)
- updated commit messages in patches 3 & 6 to make it more clear (Wolfram)

In v4:
- fixed spelling in the first patch commit message (Sakari)
- wrapped the commit message in the patch before the last (Sakari)
- added tag to the last patch (Tomi)

In v3:
- fixed compile issues with i2c-core-slave.c (LKP)
- fixed compile issues with IRQ APIs, i.e. missing header (LKP)
- added patch for the only user which assigns two fields (Tomi)
- added tags (Tomi)

In v2:
- covered i2c-core-slave.c where it makes sense
- covered i2c-core-of.c where it makes sense
- rebased on top of the latest code base

Andy Shevchenko (7):
  i2c: core: Drop duplicate check before calling OF APIs
  i2c: core: Unify the firmware node type check
  i2c: core: Switch to fwnode APIs to get IRQ
  i2c: core: Reuse fwnode variable where it makes sense
  i2c: core: Do not dereference fwnode in struct device
  i2c: core: Deprecate of_node in struct i2c_board_info
  media: i2c: ds90ub960: Remove of_node assignment

 drivers/i2c/i2c-core-base.c   | 61 +++++++++++++++++------------------
 drivers/i2c/i2c-core-of.c     |  1 -
 drivers/i2c/i2c-core-slave.c  | 12 ++++---
 drivers/media/i2c/ds90ub960.c |  1 -
 include/linux/i2c.h           |  2 +-
 5 files changed, 39 insertions(+), 38 deletions(-)

-- 
2.47.2
Re: [PATCH v5 0/7] i2c: core: Move client towards fwnode
Posted by Wolfram Sang 8 months ago
On Wed, Apr 16, 2025 at 10:01:30AM +0300, Andy Shevchenko wrote:
> The struct i2c_board_info has of_node and fwnode members. This is quite
> confusing as they are of the same semantics and it's tend to have an issue
> if user assigns both. Luckily there is only a single driver that does this
> and fix is provided in the last patch. Nevertheless the series moves
> the client handling code to use fwnode and deprecates the of_node member
> in the respective documentation.
> 
> In v5:
> - reformatted conditionals to make media CI happy (media CI)
> - updated commit messages in patches 3 & 6 to make it more clear (Wolfram)
> 
> In v4:
> - fixed spelling in the first patch commit message (Sakari)
> - wrapped the commit message in the patch before the last (Sakari)
> - added tag to the last patch (Tomi)
> 
> In v3:
> - fixed compile issues with i2c-core-slave.c (LKP)
> - fixed compile issues with IRQ APIs, i.e. missing header (LKP)
> - added patch for the only user which assigns two fields (Tomi)
> - added tags (Tomi)
> 
> In v2:
> - covered i2c-core-slave.c where it makes sense
> - covered i2c-core-of.c where it makes sense
> - rebased on top of the latest code base
> 
> Andy Shevchenko (7):
>   i2c: core: Drop duplicate check before calling OF APIs
>   i2c: core: Unify the firmware node type check
>   i2c: core: Switch to fwnode APIs to get IRQ
>   i2c: core: Reuse fwnode variable where it makes sense
>   i2c: core: Do not dereference fwnode in struct device
>   i2c: core: Deprecate of_node in struct i2c_board_info
>   media: i2c: ds90ub960: Remove of_node assignment
> 

Works at least on my OF-based platform. Let's go CI.

Applied to for-next, thanks!

Re: [PATCH v5 0/7] i2c: core: Move client towards fwnode
Posted by Andy Shevchenko 8 months ago
On Wed, Apr 16, 2025 at 06:11:02PM +0200, Wolfram Sang wrote:
> On Wed, Apr 16, 2025 at 10:01:30AM +0300, Andy Shevchenko wrote:
> > The struct i2c_board_info has of_node and fwnode members. This is quite
> > confusing as they are of the same semantics and it's tend to have an issue
> > if user assigns both. Luckily there is only a single driver that does this
> > and fix is provided in the last patch. Nevertheless the series moves
> > the client handling code to use fwnode and deprecates the of_node member
> > in the respective documentation.

...

> Works at least on my OF-based platform. Let's go CI.
> 
> Applied to for-next, thanks!
Thank you!

-- 
With Best Regards,
Andy Shevchenko