summaryrefslogtreecommitdiffstats
path: root/drivers
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 /drivers
parent45b064d73d6a5cfcfa76012b91e2afc98e341664 (diff)
downloadlinux-85fa4e1f094183d230c47fa1e83373f692dc05ec.tar.gz
linux-85fa4e1f094183d230c47fa1e83373f692dc05ec.tar.bz2
linux-85fa4e1f094183d230c47fa1e83373f692dc05ec.zip
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>
Diffstat (limited to 'drivers')
-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 4381fcf2389c..a45406aa2b14 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