pinctrl: meson-axg-pmx: fix gpio request
authorNeil Armstrong <narmstrong@baylibre.com>
Fri, 2 Oct 2020 07:31:46 +0000 (09:31 +0200)
committerNeil Armstrong <narmstrong@baylibre.com>
Mon, 5 Oct 2020 16:01:39 +0000 (18:01 +0200)
The AXG pmx driver gpio request offset needs the pin base to have the
correct pin number.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c

index c6cb941..cfe94cf 100644 (file)
@@ -165,7 +165,10 @@ const struct pinctrl_ops meson_axg_pinctrl_ops = {
 static int meson_axg_gpio_request(struct udevice *dev,
                                  unsigned int offset, const char *label)
 {
-       return meson_axg_pmx_update_function(dev->parent, offset, 0);
+       struct meson_pinctrl *priv = dev_get_priv(dev->parent);
+
+       return meson_axg_pmx_update_function(dev->parent,
+                                            offset + priv->data->pin_base, 0);
 }
 
 static const struct dm_gpio_ops meson_axg_gpio_ops = {