aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinctrl-xway.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pinctrl/pinctrl-xway.c')
-rw-r--r--drivers/pinctrl/pinctrl-xway.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
index c49c9dbe3917..aa4c8b815c20 100644
--- a/drivers/pinctrl/pinctrl-xway.c
+++ b/drivers/pinctrl/pinctrl-xway.c
@@ -522,9 +522,24 @@ static int xway_pinconf_set(struct pinctrl_dev *pctldev,
522 return 0; 522 return 0;
523} 523}
524 524
525int xway_pinconf_group_set(struct pinctrl_dev *pctldev,
526 unsigned selector,
527 unsigned long config)
528{
529 struct ltq_pinmux_info *info = pinctrl_dev_get_drvdata(pctldev);
530 int i, ret = 0;
531
532 for (i = 0; i < info->grps[selector].npins && !ret; i++)
533 ret = xway_pinconf_set(pctldev,
534 info->grps[selector].pins[i], config);
535
536 return ret;
537}
538
525static struct pinconf_ops xway_pinconf_ops = { 539static struct pinconf_ops xway_pinconf_ops = {
526 .pin_config_get = xway_pinconf_get, 540 .pin_config_get = xway_pinconf_get,
527 .pin_config_set = xway_pinconf_set, 541 .pin_config_set = xway_pinconf_set,
542 .pin_config_group_set = xway_pinconf_group_set,
528}; 543};
529 544
530static struct pinctrl_desc xway_pctrl_desc = { 545static struct pinctrl_desc xway_pctrl_desc = {