diff options
author | John Crispin <john@phrozen.org> | 2016-09-12 05:36:55 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-10-03 18:36:20 -0400 |
commit | 6bcf3f63394b9c4f133e4499349d786d7f531473 (patch) | |
tree | 63c17ec564f399d87722ba8c3cf05e6ce7f2bd74 | |
parent | 8d0a0ac0abcdba5b5d52726055c95f1f6234e85e (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.c | 2 |
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 | ||