On Sun, Dec 05, 2021 at 01:06:07AM +0100, Linus Walleij wrote: > On Thu, Dec 2, 2021 at 10:17 PM Andy Shevchenko > <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > > GPIO library does copy the of_node from the parent device of > > the GPIO chip, there is no need to repeat this in the individual > > drivers. Remove these assignment all at once. > > > > For the details one may look into the of_gpio_dev_init() implementation. > > > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > This is definitely a patch in the right direction, as Bart says > it can be a bit dangerous, the outliers are those drivers that > assign the .dev to something completely different than the > the dev where the of_node is copied from. I carefully checked these all and this patch series is only for the cases when I'm sure it's the same device, which is used as parent, and its of_node supplied. > The idea was definitely always to only assign it in the core > *unless* there is a reason to have a completely different > of_node for some reason. > > > +++ b/drivers/gpio/gpio-rda.c > > @@ -240,8 +240,6 @@ static int rda_gpio_probe(struct platform_device *pdev) > > rda_gpio->chip.label = dev_name(dev); > > rda_gpio->chip.ngpio = ngpios; > > rda_gpio->chip.base = -1; > > - rda_gpio->chip.parent = dev; > > - rda_gpio->chip.of_node = np; > > Mention in the commit message that in this driver > you also drop the the .parent assignment because the > core will handle it. Okay, I will update it. Also I'll update to the last codebase (dunno if Bart is going to pull the IB from Lee where one of the drivers is gone: da53cc634cea ("gpio: bd70528 Drop BD70528 support"). -- With Best Regards, Andy Shevchenko