aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2018-07-14 18:11:41 -0400
committerOlof Johansson <olof@lixom.net>2018-07-14 18:11:41 -0400
commit4dbd2b429a2cdfbb1b650edbb4fab2f2fe8186ae (patch)
tree1f0393e3d095a9b5cb097c9d7246af5225e26be4
parentf0463f3619fd10e0cbaa5195bf2bc264a77a586d (diff)
parent0c1049dcb4ceec640d8bd797335bcbebdcab44d2 (diff)
Merge tag 'pxa-fixes-4.18' of https://github.com/rjarzmik/linux into fixes
This is the fixes set for v4.18 cycle. This is a fix for suspending all pxa3xx platforms, where high number interrupts are not reenabled. * tag 'pxa-fixes-4.18' of https://github.com/rjarzmik/linux: ARM: pxa: irq: fix handling of ICMR registers in suspend/resume Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r--arch/arm/mach-pxa/irq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c
index 9c10248fadcc..4e8c2116808e 100644
--- a/arch/arm/mach-pxa/irq.c
+++ b/arch/arm/mach-pxa/irq.c
@@ -185,7 +185,7 @@ static int pxa_irq_suspend(void)
185{ 185{
186 int i; 186 int i;
187 187
188 for (i = 0; i < pxa_internal_irq_nr / 32; i++) { 188 for (i = 0; i < DIV_ROUND_UP(pxa_internal_irq_nr, 32); i++) {
189 void __iomem *base = irq_base(i); 189 void __iomem *base = irq_base(i);
190 190
191 saved_icmr[i] = __raw_readl(base + ICMR); 191 saved_icmr[i] = __raw_readl(base + ICMR);
@@ -204,7 +204,7 @@ static void pxa_irq_resume(void)
204{ 204{
205 int i; 205 int i;
206 206
207 for (i = 0; i < pxa_internal_irq_nr / 32; i++) { 207 for (i = 0; i < DIV_ROUND_UP(pxa_internal_irq_nr, 32); i++) {
208 void __iomem *base = irq_base(i); 208 void __iomem *base = irq_base(i);
209 209
210 __raw_writel(saved_icmr[i], base + ICMR); 210 __raw_writel(saved_icmr[i], base + ICMR);