Message ID | 1489745120-2918-2-git-send-email-ckeepax@opensource.wolfsonmicro.com |
---|---|
State | New |
Headers | show |
On Fri, 17 Mar 2017, Charles Keepax wrote: > Now the wm831x-core has basic DT support we can update this driver to > allow use of the GPIOs within a device tree system. > > Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> > Acked-by: Linus Walleij <linus.walleij@linaro.org> > --- > > No changes since v4, still should go through Lee's tree. > > Thanks, > Charles > > drivers/gpio/gpio-wm831x.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) Applied, thanks. > diff --git a/drivers/gpio/gpio-wm831x.c b/drivers/gpio/gpio-wm831x.c > index 00e3839..938bbe3 100644 > --- a/drivers/gpio/gpio-wm831x.c > +++ b/drivers/gpio/gpio-wm831x.c > @@ -263,7 +263,7 @@ static const struct gpio_chip template_chip = { > static int wm831x_gpio_probe(struct platform_device *pdev) > { > struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent); > - struct wm831x_pdata *pdata = dev_get_platdata(wm831x->dev); > + struct wm831x_pdata *pdata = &wm831x->pdata; > struct wm831x_gpio *wm831x_gpio; > int ret; > > @@ -280,6 +280,9 @@ static int wm831x_gpio_probe(struct platform_device *pdev) > wm831x_gpio->gpio_chip.base = pdata->gpio_base; > else > wm831x_gpio->gpio_chip.base = -1; > +#ifdef CONFIG_OF_GPIO > + wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node; > +#endif > > ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip, > wm831x_gpio);
On Thu, Mar 23, 2017 at 1:47 PM, Lee Jones <lee.jones@linaro.org> wrote: > On Fri, 17 Mar 2017, Charles Keepax wrote: > >> Now the wm831x-core has basic DT support we can update this driver to >> allow use of the GPIOs within a device tree system. >> >> Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> >> Acked-by: Linus Walleij <linus.walleij@linaro.org> >> --- >> >> No changes since v4, still should go through Lee's tree. >> >> Thanks, >> Charles >> >> drivers/gpio/gpio-wm831x.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) > > Applied, thanks. >> +#ifdef CONFIG_OF_GPIO >> + wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node; >> +#endif Just a bit of off topic. If we can use struct fwnode_handle we might get rid of all those CONFIG_OF_GPIO in the drivers.
diff --git a/drivers/gpio/gpio-wm831x.c b/drivers/gpio/gpio-wm831x.c index 00e3839..938bbe3 100644 --- a/drivers/gpio/gpio-wm831x.c +++ b/drivers/gpio/gpio-wm831x.c @@ -263,7 +263,7 @@ static const struct gpio_chip template_chip = { static int wm831x_gpio_probe(struct platform_device *pdev) { struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent); - struct wm831x_pdata *pdata = dev_get_platdata(wm831x->dev); + struct wm831x_pdata *pdata = &wm831x->pdata; struct wm831x_gpio *wm831x_gpio; int ret; @@ -280,6 +280,9 @@ static int wm831x_gpio_probe(struct platform_device *pdev) wm831x_gpio->gpio_chip.base = pdata->gpio_base; else wm831x_gpio->gpio_chip.base = -1; +#ifdef CONFIG_OF_GPIO + wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node; +#endif ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip, wm831x_gpio);