mfd: ab8500-core: APE Interrupts are not cleared
authorLee Jones <lee.jones@linaro.org>
Mon, 25 Feb 2013 14:34:26 +0000 (14:34 +0000)
committerLee Jones <lee.jones@linaro.org>
Thu, 7 Mar 2013 04:27:20 +0000 (12:27 +0800)
There are missing register descriptions from the AB8505 user manual
and these need to be masked so that the APEINT line can toggle.
This patch also affects the behaviour of AB9540.

Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Maxime COQUELIN <maxime.coquelin@stericsson.com>
Reviewed-by: Alexandre TORGUE <alexandre.torgue@stericsson.com>
Reviewed-by: Mattias WALLIN <mattias.wallin@stericsson.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/ab8500-core.c

index 50e6f1e297277398c344336f29fc39acc9d38f7c..baaf2ed8095b68fe48c31495323239d3ba922fdc 100644 (file)
@@ -95,6 +95,7 @@
 #define AB8500_IT_MASK22_REG           0x55
 #define AB8500_IT_MASK23_REG           0x56
 #define AB8500_IT_MASK24_REG           0x57
+#define AB8500_IT_MASK25_REG           0x58
 
 /*
  * latch hierarchy registers
@@ -137,9 +138,9 @@ static const int ab8500_irq_regoffset[AB8500_NUM_IRQ_REGS] = {
        0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 18, 19, 20, 21,
 };
 
-/* AB9540 support */
+/* AB9540 / AB8505 support */
 static const int ab9540_irq_regoffset[AB9540_NUM_IRQ_REGS] = {
-       0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 18, 19, 20, 21, 12, 13, 24,
+       0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 18, 19, 20, 21, 12, 13, 24, 5, 22, 23
 };
 
 static const char ab8500_version_str[][7] = {