瀏覽代碼

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>
Vineet Gupta 10 年之前
父節點
當前提交
b8628f3fe4
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      arch/arc/include/asm/irqflags-arcv2.h

+ 2 - 1
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__