Hello, On 15/11/2021 22:23:16-0800, Colin Foster wrote: > struct gpio_chip recommends passing -1 as base to gpiolib. Doing so avoids > conflicts when the chip is external and gpiochip0 already exists. > > Signed-off-by: Colin Foster <colin.foster@xxxxxxxxxxxxxxxx> > --- > drivers/pinctrl/pinctrl-ocelot.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pinctrl/pinctrl-ocelot.c b/drivers/pinctrl/pinctrl-ocelot.c > index cc7fb0556169..f015404c425c 100644 > --- a/drivers/pinctrl/pinctrl-ocelot.c > +++ b/drivers/pinctrl/pinctrl-ocelot.c > @@ -1308,7 +1308,7 @@ static int ocelot_gpiochip_register(struct platform_device *pdev, > gc = &info->gpio_chip; > gc->ngpio = info->desc->npins; > gc->parent = &pdev->dev; > - gc->base = 0; > + gc->base = -1; I can't remember why but I'm pretty sure I did that on purpose but this indeed cause issues when the chip is external. I've asked Clément to check, let's see what the result is ;) > gc->of_node = info->dev->of_node; > gc->label = "ocelot-gpio"; > > -- > 2.25.1 > -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com