aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Crispin <john@phrozen.org>2016-09-12 05:36:55 -0400
committerLinus Walleij <linus.walleij@linaro.org>2016-10-03 18:36:20 -0400
commit6bcf3f63394b9c4f133e4499349d786d7f531473 (patch)
tree63c17ec564f399d87722ba8c3cf05e6ce7f2bd74
parent8d0a0ac0abcdba5b5d52726055c95f1f6234e85e (diff)
pinctrl: qcom: fix masking of pinmux functions
The following commit introduced a regression by not properly masking the calculated value. Fixes: 47a01ee9a6c3 ("pinctrl: qcom: Clear all function selection bits") Signed-off-by: John Crispin <john@phrozen.org> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Reviewed-by: Stephen Boyd <stephen.boyd@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--drivers/pinctrl/qcom/pinctrl-msm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pinctrl/qcom/pinctrl-msm.c b/drivers/pinctrl/qcom/pinctrl-msm.c
index 51c42d746883..775c88303017 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm.c
@@ -156,7 +156,7 @@ static int msm_pinmux_set_mux(struct pinctrl_dev *pctldev,
156 spin_lock_irqsave(&pctrl->lock, flags); 156 spin_lock_irqsave(&pctrl->lock, flags);
157 157
158 val = readl(pctrl->regs + g->ctl_reg); 158 val = readl(pctrl->regs + g->ctl_reg);
159 val &= mask; 159 val &= ~mask;
160 val |= i << g->mux_bit; 160 val |= i << g->mux_bit;
161 writel(val, pctrl->regs + g->ctl_reg); 161 writel(val, pctrl->regs + g->ctl_reg);
162 162