summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sverdlin <alexander.sverdlin@nokia.com>2015-02-27 16:30:07 +0100
committerMark Brown <broonie@kernel.org>2015-03-06 19:45:20 +0000
commit85fa4e1f094183d230c47fa1e83373f692dc05ec (patch)
tree4ccb6224fa94701c832c4ccafead7e8359c9bad1
parent45b064d73d6a5cfcfa76012b91e2afc98e341664 (diff)
downloadop-kernel-dev-85fa4e1f094183d230c47fa1e83373f692dc05ec.zip
op-kernel-dev-85fa4e1f094183d230c47fa1e83373f692dc05ec.tar.gz
spi: pl022: Don't touch unspecified bits in interrupt mask
PL022 Programmers model explicitely states "do not modify undefined register bits". Correct the "all enable" interrupt mask so that it only enables defined ones. Signed-off-by: Alexander Sverdlin <alexander.sverdlin@nokia.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/spi/spi-pl022.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index 4381fcf..a45406a 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -285,7 +285,12 @@
*/
#define DEFAULT_SSP_REG_IMSC 0x0UL
#define DISABLE_ALL_INTERRUPTS DEFAULT_SSP_REG_IMSC
-#define ENABLE_ALL_INTERRUPTS (~DEFAULT_SSP_REG_IMSC)
+#define ENABLE_ALL_INTERRUPTS ( \
+ SSP_IMSC_MASK_RORIM | \
+ SSP_IMSC_MASK_RTIM | \
+ SSP_IMSC_MASK_RXIM | \
+ SSP_IMSC_MASK_TXIM \
+)
#define CLEAR_ALL_INTERRUPTS 0x3
OpenPOWER on IntegriCloud