summaryrefslogtreecommitdiffstats
path: root/drivers/sh/pfc/pinctrl.c
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2012-07-17 08:23:11 +0200
committerPaul Mundt <lethal@linux-sh.org>2012-07-17 08:23:11 +0200
commite3e79454a7c81a5e48c6d6b31068b12936e7d780 (patch)
treeeaa8ec6eef0f4cc6ef15aba7bfcac5e0d7d7fd91 /drivers/sh/pfc/pinctrl.c
parentsh: pfc: Export pinctrl binding init symbol. (diff)
downloadlinux-e3e79454a7c81a5e48c6d6b31068b12936e7d780.tar.xz
linux-e3e79454a7c81a5e48c6d6b31068b12936e7d780.zip
sh: pfc: Ignore pinmux GPIOs with invalid enum IDs.
If we encounter invalid entries in the pinmux GPIO range, make sure we've still got a dummy pin definition but don't otherwise map it. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/sh/pfc/pinctrl.c')
-rw-r--r--drivers/sh/pfc/pinctrl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/sh/pfc/pinctrl.c b/drivers/sh/pfc/pinctrl.c
index 4eaf24b36a81..e79e379917fc 100644
--- a/drivers/sh/pfc/pinctrl.c
+++ b/drivers/sh/pfc/pinctrl.c
@@ -338,6 +338,10 @@ static int __devinit sh_pfc_map_gpios(struct sh_pfc *pfc,
pin->number = pfc->first_gpio + i;
pin->name = gpio->name;
+ /* XXX */
+ if (unlikely(!gpio->enum_id))
+ continue;
+
sh_pfc_map_one_gpio(pfc, pmx, gpio, i);
}