Message ID | 20211116062328.1949151-12-colin.foster@in-advantage.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | add support for VSC75XX control over SPI | expand |
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@in-advantage.com> > --- > 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 >
Le Tue, 16 Nov 2021 18:36:33 +0100, Alexandre Belloni <alexandre.belloni@bootlin.com> a écrit : > 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@in-advantage.com> > > --- > > 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 ;) After testing, it works on ocelot pcb123 board. Tested-by: Clément Léger <clement.leger@bootlin.com> > > > gc->of_node = info->dev->of_node; > > gc->label = "ocelot-gpio"; > > > > -- > > 2.25.1 > > >
On Wed, Nov 17, 2021 at 02:47:05PM +0100, Clément Léger wrote: > Le Tue, 16 Nov 2021 18:36:33 +0100, > Alexandre Belloni <alexandre.belloni@bootlin.com> a écrit : > > > 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@in-advantage.com> > > > --- > > > 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 ;) > > After testing, it works on ocelot pcb123 board. Thank you! Glad to hear it didn't break anything. > > Tested-by: Clément Léger <clement.leger@bootlin.com> > > > > > > gc->of_node = info->dev->of_node; > > > gc->label = "ocelot-gpio"; > > > > > > -- > > > 2.25.1 > > > > > > > > > -- > Clément Léger, > Embedded Linux and Kernel engineer at Bootlin > https://bootlin.com
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; gc->of_node = info->dev->of_node; gc->label = "ocelot-gpio";
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@in-advantage.com> --- drivers/pinctrl/pinctrl-ocelot.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)