1 From 2d9ffb1a3f87396c3b792124870ef63fc27c568f Mon Sep 17 00:00:00 2001
2 From: Stephen Boyd <sboyd@codeaurora.org>
3 Date: Thu, 6 Mar 2014 22:44:46 -0800
4 Subject: [PATCH 032/182] pinctrl: msm: Simplify msm_config_reg() and callers
6 We don't need to check for a negative reg here because reg is
7 always the same and is always non-negative. Also, collapse the
8 switch statement down for the duplicate cases.
10 Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
11 Acked-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
12 Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 drivers/pinctrl/pinctrl-msm.c | 29 +++++------------------------
15 1 file changed, 5 insertions(+), 24 deletions(-)
17 --- a/drivers/pinctrl/pinctrl-msm.c
18 +++ b/drivers/pinctrl/pinctrl-msm.c
19 @@ -200,28 +200,17 @@ static const struct pinmux_ops msm_pinmu
20 static int msm_config_reg(struct msm_pinctrl *pctrl,
21 const struct msm_pingroup *g,
28 case PIN_CONFIG_BIAS_DISABLE:
33 case PIN_CONFIG_BIAS_PULL_DOWN:
38 case PIN_CONFIG_BIAS_PULL_UP:
43 case PIN_CONFIG_DRIVE_STRENGTH:
48 @@ -230,12 +219,6 @@ static int msm_config_reg(struct msm_pin
53 - dev_err(pctrl->dev, "Config param %04x not supported on group %s\n",
61 @@ -273,17 +256,16 @@ static int msm_config_group_get(struct p
69 g = &pctrl->soc->groups[group];
71 - ret = msm_config_reg(pctrl, g, param, ®, &mask, &bit);
72 + ret = msm_config_reg(pctrl, g, param, &mask, &bit);
76 - val = readl(pctrl->regs + reg);
77 + val = readl(pctrl->regs + g->ctl_reg);
78 arg = (val >> bit) & mask;
80 /* Convert register value to pinconf value */
81 @@ -323,7 +305,6 @@ static int msm_config_group_set(struct p
89 @@ -334,7 +315,7 @@ static int msm_config_group_set(struct p
90 param = pinconf_to_config_param(configs[i]);
91 arg = pinconf_to_config_argument(configs[i]);
93 - ret = msm_config_reg(pctrl, g, param, ®, &mask, &bit);
94 + ret = msm_config_reg(pctrl, g, param, &mask, &bit);
98 @@ -369,10 +350,10 @@ static int msm_config_group_set(struct p
101 spin_lock_irqsave(&pctrl->lock, flags);
102 - val = readl(pctrl->regs + reg);
103 + val = readl(pctrl->regs + g->ctl_reg);
104 val &= ~(mask << bit);
106 - writel(val, pctrl->regs + reg);
107 + writel(val, pctrl->regs + g->ctl_reg);
108 spin_unlock_irqrestore(&pctrl->lock, flags);