On Mon, Dec 6, 2021 at 2:13 PM Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > 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"). > I didn't plan to, just drop it from your patch. Bart