summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2012-07-17 15:23:11 +0900
committerPaul Mundt <lethal@linux-sh.org>2012-07-17 15:23:11 +0900
commite3e79454a7c81a5e48c6d6b31068b12936e7d780 (patch)
treeeaa8ec6eef0f4cc6ef15aba7bfcac5e0d7d7fd91
parent1acbbb4ed846ec6a546834c86a3bd4a5bad4ee4d (diff)
downloadlinux-stable-e3e79454a7c81a5e48c6d6b31068b12936e7d780.tar.gz
linux-stable-e3e79454a7c81a5e48c6d6b31068b12936e7d780.tar.bz2
linux-stable-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>
-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);
}