pinctrl: spear: Make get_gpio_pingroup return NULL when no gpio_pingroup found
Currently get_gpio_pingroup() may return NULL or ERR_PTR(-EINVAL) when
no gpio_pingroup found. The caller in gpio_request_endisable() only
checks if the return value is NULL. Return ERR_PTR(-EINVAL) for
get_gpio_pingroup() causes problem and seems not necessary.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
diff --git a/drivers/pinctrl/spear/pinctrl-spear.c b/drivers/pinctrl/spear/pinctrl-spear.c
index add9332..bf78eb7 100644
--- a/drivers/pinctrl/spear/pinctrl-spear.c
+++ b/drivers/pinctrl/spear/pinctrl-spear.c
@@ -286,12 +286,12 @@
unsigned pin)
{
struct spear_gpio_pingroup *gpio_pingroup;
- int i = 0, j;
+ int i, j;
if (!pmx->machdata->gpio_pingroups)
return NULL;
- for (; i < pmx->machdata->ngpio_pingroups; i++) {
+ for (i = 0; i < pmx->machdata->ngpio_pingroups; i++) {
gpio_pingroup = &pmx->machdata->gpio_pingroups[i];
for (j = 0; j < gpio_pingroup->npins; j++) {
@@ -300,7 +300,7 @@
}
}
- return ERR_PTR(-EINVAL);
+ return NULL;
}
static int gpio_request_endisable(struct pinctrl_dev *pctldev,