[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1490947959-19597-1-git-send-email-hugues.fruchet@st.com>
Date: Fri, 31 Mar 2017 10:12:39 +0200
From: Hugues Fruchet <hugues.fruchet@...com>
To: Lee Jones <lee.jones@...aro.org>
CC: <linux-kernel@...r.kernel.org>,
Benjamin Gaignard <benjamin.gaignard@...aro.org>,
Amelie DELAUNAY <amelie.delaunay@...com>,
Patrice Chotard <patrice.chotard@...com>
Subject: [PATCH] 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@...com>
---
drivers/mfd/stmpe.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/mfd/stmpe.c b/drivers/mfd/stmpe.c
index b0c7bcd..566caca 100644
--- a/drivers/mfd/stmpe.c
+++ b/drivers/mfd/stmpe.c
@@ -568,6 +568,8 @@ static int stmpe811_get_altfunc(struct stmpe *stmpe, enum stmpe_block block)
[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,
--
1.9.1
Powered by blists - more mailing lists