Message ID | 20220905180034.73132-1-andriy.shevchenko@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v1,1/1] pinctrl: meson: Switch to use fwnode instead of of_node | expand |
On 05/09/2022 20:00, Andy Shevchenko wrote: > GPIO library now accepts fwnode as a firmware node, so > switch the driver to use it. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > drivers/pinctrl/meson/pinctrl-meson.c | 7 +++---- > drivers/pinctrl/meson/pinctrl-meson.h | 4 +++- > 2 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/drivers/pinctrl/meson/pinctrl-meson.c b/drivers/pinctrl/meson/pinctrl-meson.c > index cc2cd73ff8f9..530f3f934e19 100644 > --- a/drivers/pinctrl/meson/pinctrl-meson.c > +++ b/drivers/pinctrl/meson/pinctrl-meson.c > @@ -608,6 +608,7 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc) > > pc->chip.label = pc->data->name; > pc->chip.parent = pc->dev; > + pc->chip.fwnode = pc->fwnode; > pc->chip.request = gpiochip_generic_request; > pc->chip.free = gpiochip_generic_free; > pc->chip.set_config = gpiochip_generic_config; > @@ -619,8 +620,6 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc) > pc->chip.base = -1; > pc->chip.ngpio = pc->data->num_pins; > pc->chip.can_sleep = false; > - pc->chip.of_node = pc->of_node; > - pc->chip.of_gpio_n_cells = 2; > > ret = gpiochip_add_data(&pc->chip, pc); > if (ret) { > @@ -678,8 +677,8 @@ static int meson_pinctrl_parse_dt(struct meson_pinctrl *pc) > return -EINVAL; > } > > - gpio_np = to_of_node(gpiochip_node_get_first(pc->dev)); > - pc->of_node = gpio_np; > + pc->fwnode = gpiochip_node_get_first(pc->dev); > + gpio_np = to_of_node(pc->fwnode); > > pc->reg_mux = meson_map_resource(pc, gpio_np, "mux"); > if (IS_ERR_OR_NULL(pc->reg_mux)) { > diff --git a/drivers/pinctrl/meson/pinctrl-meson.h b/drivers/pinctrl/meson/pinctrl-meson.h > index b197827027bd..34fc4e8612e4 100644 > --- a/drivers/pinctrl/meson/pinctrl-meson.h > +++ b/drivers/pinctrl/meson/pinctrl-meson.h > @@ -12,6 +12,8 @@ > #include <linux/types.h> > #include <linux/module.h> > > +struct fwnode_handle; > + > struct meson_pinctrl; > > /** > @@ -131,7 +133,7 @@ struct meson_pinctrl { > struct regmap *reg_gpio; > struct regmap *reg_ds; > struct gpio_chip chip; > - struct device_node *of_node; > + struct fwnode_handle *fwnode; > }; > > #define FUNCTION(fn) \ Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
On Tue, Sep 06, 2022 at 11:07:07AM +0200, Neil Armstrong wrote: > On 05/09/2022 20:00, Andy Shevchenko wrote: > > GPIO library now accepts fwnode as a firmware node, so > > switch the driver to use it. ... > Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> Thanks!
On Mon, Sep 5, 2022 at 8:00 PM Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > GPIO library now accepts fwnode as a firmware node, so > switch the driver to use it. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Patch applied. Yours, Linus Walleij
diff --git a/drivers/pinctrl/meson/pinctrl-meson.c b/drivers/pinctrl/meson/pinctrl-meson.c index cc2cd73ff8f9..530f3f934e19 100644 --- a/drivers/pinctrl/meson/pinctrl-meson.c +++ b/drivers/pinctrl/meson/pinctrl-meson.c @@ -608,6 +608,7 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc) pc->chip.label = pc->data->name; pc->chip.parent = pc->dev; + pc->chip.fwnode = pc->fwnode; pc->chip.request = gpiochip_generic_request; pc->chip.free = gpiochip_generic_free; pc->chip.set_config = gpiochip_generic_config; @@ -619,8 +620,6 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc) pc->chip.base = -1; pc->chip.ngpio = pc->data->num_pins; pc->chip.can_sleep = false; - pc->chip.of_node = pc->of_node; - pc->chip.of_gpio_n_cells = 2; ret = gpiochip_add_data(&pc->chip, pc); if (ret) { @@ -678,8 +677,8 @@ static int meson_pinctrl_parse_dt(struct meson_pinctrl *pc) return -EINVAL; } - gpio_np = to_of_node(gpiochip_node_get_first(pc->dev)); - pc->of_node = gpio_np; + pc->fwnode = gpiochip_node_get_first(pc->dev); + gpio_np = to_of_node(pc->fwnode); pc->reg_mux = meson_map_resource(pc, gpio_np, "mux"); if (IS_ERR_OR_NULL(pc->reg_mux)) { diff --git a/drivers/pinctrl/meson/pinctrl-meson.h b/drivers/pinctrl/meson/pinctrl-meson.h index b197827027bd..34fc4e8612e4 100644 --- a/drivers/pinctrl/meson/pinctrl-meson.h +++ b/drivers/pinctrl/meson/pinctrl-meson.h @@ -12,6 +12,8 @@ #include <linux/types.h> #include <linux/module.h> +struct fwnode_handle; + struct meson_pinctrl; /** @@ -131,7 +133,7 @@ struct meson_pinctrl { struct regmap *reg_gpio; struct regmap *reg_ds; struct gpio_chip chip; - struct device_node *of_node; + struct fwnode_handle *fwnode; }; #define FUNCTION(fn) \
GPIO library now accepts fwnode as a firmware node, so switch the driver to use it. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/pinctrl/meson/pinctrl-meson.c | 7 +++---- drivers/pinctrl/meson/pinctrl-meson.h | 4 +++- 2 files changed, 6 insertions(+), 5 deletions(-)