aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2018-05-03 13:26:42 -0400
committerLinus Walleij <linus.walleij@linaro.org>2018-05-16 08:17:21 -0400
commit59837002c775df7f57f1d494582a7d9c340de890 (patch)
tree6937224fdd3dccb48dda806e138496af4a41510d
parent90b60552a29b9517b56856b849f229b3e915e6ac (diff)
pinctrl: armada-37xx: Convert to use match_string() helper
The new helper returns index of the matching string in an array. We are going to use it here. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--drivers/pinctrl/mvebu/pinctrl-armada-37xx.c29
1 files changed, 8 insertions, 21 deletions
diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
index 5b63248c8209..0f1eafba0ded 100644
--- a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
+++ b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
@@ -214,18 +214,6 @@ static inline void armada_37xx_update_reg(unsigned int *reg,
214 } 214 }
215} 215}
216 216
217static int armada_37xx_get_func_reg(struct armada_37xx_pin_group *grp,
218 const char *func)
219{
220 int f;
221
222 for (f = 0; (f < NB_FUNCS) && grp->funcs[f]; f++)
223 if (!strcmp(grp->funcs[f], func))
224 return f;
225
226 return -ENOTSUPP;
227}
228
229static struct armada_37xx_pin_group *armada_37xx_find_next_grp_by_pin( 217static struct armada_37xx_pin_group *armada_37xx_find_next_grp_by_pin(
230 struct armada_37xx_pinctrl *info, int pin, int *grp) 218 struct armada_37xx_pinctrl *info, int pin, int *grp)
231{ 219{
@@ -344,10 +332,9 @@ static int armada_37xx_pmx_set_by_name(struct pinctrl_dev *pctldev,
344 dev_dbg(info->dev, "enable function %s group %s\n", 332 dev_dbg(info->dev, "enable function %s group %s\n",
345 name, grp->name); 333 name, grp->name);
346 334
347 func = armada_37xx_get_func_reg(grp, name); 335 func = match_string(grp->funcs, NB_FUNCS, name);
348
349 if (func < 0) 336 if (func < 0)
350 return func; 337 return -ENOTSUPP;
351 338
352 val = grp->val[func]; 339 val = grp->val[func];
353 340
@@ -932,12 +919,12 @@ static int armada_37xx_fill_func(struct armada_37xx_pinctrl *info)
932 struct armada_37xx_pin_group *gp = &info->groups[g]; 919 struct armada_37xx_pin_group *gp = &info->groups[g];
933 int f; 920 int f;
934 921
935 for (f = 0; (f < NB_FUNCS) && gp->funcs[f]; f++) { 922 f = match_string(gp->funcs, NB_FUNCS, name);
936 if (strcmp(gp->funcs[f], name) == 0) { 923 if (f < 0)
937 *groups = gp->name; 924 continue;
938 groups++; 925
939 } 926 *groups = gp->name;
940 } 927 groups++;
941 } 928 }
942 } 929 }
943 return 0; 930 return 0;