diff options
author | Hugues Fruchet <hugues.fruchet@st.com> | 2017-03-31 10:12:39 +0200 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2017-04-27 10:25:07 +0200 |
commit | b97eef5d77b53662b06603c1b18e21968029c925 (patch) | |
tree | a5594100f4e67002cb1d688571212b2034344f61 /drivers/mfd/stmpe.c | |
parent | mfd: bxtwc: Remove unnecessary i2c_addr checks in ipc calls (diff) | |
download | linux-b97eef5d77b53662b06603c1b18e21968029c925.tar.xz linux-b97eef5d77b53662b06603c1b18e21968029c925.zip |
mfd: stmpe: Fix bit clearing on STMPE1600
GPIO bits clearing on pins assigned to STMPE1600
had no effects due to missing "clear registers"
settings within stmpe1600_regs[].
STMPE1600 does not have dedicated "clear registers",
but single "set/clear registers", hence stmpe1600_regs[]
"clear registers" (STMPE_IDX_GPCR_XXX) must be set to
same value as "set registers" (STMPE_IDX_GPSR_XXX), ie
STMPE1600_REG_GPSR_XXX.
Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd/stmpe.c')
-rw-r--r-- | drivers/mfd/stmpe.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mfd/stmpe.c b/drivers/mfd/stmpe.c index b0c7bcdaf5df..566caca4efd8 100644 --- a/drivers/mfd/stmpe.c +++ b/drivers/mfd/stmpe.c @@ -568,6 +568,8 @@ static const u8 stmpe1600_regs[] = { [STMPE_IDX_GPMR_CSB] = STMPE1600_REG_GPMR_MSB, [STMPE_IDX_GPSR_LSB] = STMPE1600_REG_GPSR_LSB, [STMPE_IDX_GPSR_CSB] = STMPE1600_REG_GPSR_MSB, + [STMPE_IDX_GPCR_LSB] = STMPE1600_REG_GPSR_LSB, + [STMPE_IDX_GPCR_CSB] = STMPE1600_REG_GPSR_MSB, [STMPE_IDX_GPDR_LSB] = STMPE1600_REG_GPDR_LSB, [STMPE_IDX_GPDR_CSB] = STMPE1600_REG_GPDR_MSB, [STMPE_IDX_IEGPIOR_LSB] = STMPE1600_REG_IEGPIOR_LSB, |