aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Agner <stefan@agner.ch>2015-02-06 11:30:56 -0500
committerLinus Walleij <linus.walleij@linaro.org>2015-03-17 21:02:11 -0400
commit4691dd0148e082097300239d4143311efc23f6ca (patch)
tree8f323039ff29b9f2a8a578c0de3f07f6f6e897e5
parent407f5e392f9c5b9c16178c5e6b2112234fdf9fad (diff)
pinctrl: imx: do not implicitly set pin regs to -1
Commit 3dac1918a491 ("pinctrl: imx: detect uninitialized pins") needs the values in struct imx_pin_reg to be -1. This has been done in a rather unorthodox way by setting the memory to 0xff using memset... Use a proper for loop to initialize the whole array with -1. Signed-off-by: Stefan Agner <stefan@agner.ch> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--drivers/pinctrl/freescale/pinctrl-imx.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/pinctrl/freescale/pinctrl-imx.c b/drivers/pinctrl/freescale/pinctrl-imx.c
index 448f10986c28..2ee0d9228e63 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx.c
@@ -645,7 +645,7 @@ int imx_pinctrl_probe(struct platform_device *pdev,
645{ 645{
646 struct imx_pinctrl *ipctl; 646 struct imx_pinctrl *ipctl;
647 struct resource *res; 647 struct resource *res;
648 int ret; 648 int ret, i;
649 649
650 if (!info || !info->pins || !info->npins) { 650 if (!info || !info->pins || !info->npins) {
651 dev_err(&pdev->dev, "wrong pinctrl info\n"); 651 dev_err(&pdev->dev, "wrong pinctrl info\n");
@@ -662,7 +662,11 @@ int imx_pinctrl_probe(struct platform_device *pdev,
662 info->npins, GFP_KERNEL); 662 info->npins, GFP_KERNEL);
663 if (!info->pin_regs) 663 if (!info->pin_regs)
664 return -ENOMEM; 664 return -ENOMEM;
665 memset(info->pin_regs, 0xff, sizeof(*info->pin_regs) * info->npins); 665
666 for (i = 0; i < info->npins; i++) {
667 info->pin_regs[i].mux_reg = -1;
668 info->pin_regs[i].conf_reg = -1;
669 }
666 670
667 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 671 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
668 ipctl->base = devm_ioremap_resource(&pdev->dev, res); 672 ipctl->base = devm_ioremap_resource(&pdev->dev, res);