summaryrefslogtreecommitdiffstats
path: root/arch/arc
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2015-06-17 17:03:18 +0530
committerVineet Gupta <vgupta@synopsys.com>2015-11-16 14:17:06 +0530
commitb8628f3fe41c999b003c541c078312fcead960d6 (patch)
tree66e63b963afc3e853def062250512d6e92eae185 /arch/arc
parent512b5b89b9ef90e7a6475513fa9402e55b0e831c (diff)
downloadblackbird-op-linux-b8628f3fe41c999b003c541c078312fcead960d6.tar.gz
blackbird-op-linux-b8628f3fe41c999b003c541c078312fcead960d6.zip
ARCv2: Use the default irq priority for idle sleep
Although kernel doesn't support the multiple IRQ priority levels provided by HS38x core intc yet, ensure that the default prio value is used anyways by relevant code. SLEEP insn needs to be provided the IRQ priority level which can interrupt it. This needs to be the default level which maynot necessarily be 0 as assumed by current code. This change allows a kernel with ARCV2_IRQ_DEF_PRIO = 1 to boot fine. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r--arch/arc/include/asm/irqflags-arcv2.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arc/include/asm/irqflags-arcv2.h b/arch/arc/include/asm/irqflags-arcv2.h
index f7c8d3cbeaa1..258b0e5ad332 100644
--- a/arch/arc/include/asm/irqflags-arcv2.h
+++ b/arch/arc/include/asm/irqflags-arcv2.h
@@ -37,7 +37,8 @@
#define ISA_INIT_STATUS_BITS (STATUS_IE_MASK | STATUS_AD_MASK | \
(ARCV2_IRQ_DEF_PRIO << 1))
-#define ISA_SLEEP_ARG 0x10
+/* SLEEP needs default irq priority (<=) which can interrupt the doze */
+#define ISA_SLEEP_ARG (0x10 | ARCV2_IRQ_DEF_PRIO)
#ifndef __ASSEMBLY__
OpenPOWER on IntegriCloud