summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYe Li <ye.li@nxp.com>2017-03-16 11:28:54 +0800
committerYe Li <ye.li@nxp.com>2017-04-05 17:24:33 +0800
commitd2ae50010c83bace9f8c6f9ebfbbd796a5d63a94 (patch)
treea6ac0e6f5a55427bc425bb08a8d5125fb0bb461d
parentf5dc17e6579f677eebe1df59570737f4d51430dd (diff)
downloadu-boot-imx-d2ae50010c83bace9f8c6f9ebfbbd796a5d63a94.zip
u-boot-imx-d2ae50010c83bace9f8c6f9ebfbbd796a5d63a94.tar.gz
u-boot-imx-d2ae50010c83bace9f8c6f9ebfbbd796a5d63a94.tar.bz2
MLK-14474-1 pinctrl-imx: Fix wrong mask when SHARE_MUX_CONF_REG is set
when using SHARE_MUX_CONF_REG, wrong mask is used for writing config value. which causes mux value is cleared. Signed-off-by: Ye Li <ye.li@nxp.com>
-rw-r--r--drivers/pinctrl/nxp/pinctrl-imx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pinctrl/nxp/pinctrl-imx.c b/drivers/pinctrl/nxp/pinctrl-imx.c
index f0321c4..9b80d50 100644
--- a/drivers/pinctrl/nxp/pinctrl-imx.c
+++ b/drivers/pinctrl/nxp/pinctrl-imx.c
@@ -156,7 +156,7 @@ static int imx_pinctrl_set_state(struct udevice *dev, struct udevice *config)
if (!(config_val & IMX_NO_PAD_CTL)) {
if (info->flags & SHARE_MUX_CONF_REG) {
clrsetbits_le32(info->base + conf_reg,
- info->mux_mask, config_val);
+ (~info->mux_mask), config_val);
} else {
writel(config_val, info->base + conf_reg);
}