diff options
author | Vineet Gupta <vgupta@synopsys.com> | 2013-01-18 10:42:22 +0100 |
---|---|---|
committer | Vineet Gupta <vgupta@synopsys.com> | 2013-02-15 18:46:01 +0100 |
commit | 4788a5942bc896803c87005be8c6dd14c373a2d3 (patch) | |
tree | 0999ce29d94a3517a30df1b1463fdd9c9d200b28 /arch/arc/include/asm/irqflags.h | |
parent | ARC: OProfile support (diff) | |
download | linux-4788a5942bc896803c87005be8c6dd14c373a2d3.tar.xz linux-4788a5942bc896803c87005be8c6dd14c373a2d3.zip |
ARC: Support for high priority interrupts in the in-core intc
There is a bit of hack/kludge right now where we disable preemption if a
L2 (High prio) IRQ is taken while L1 (Low prio) is active.
Need to revisit this
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/include/asm/irqflags.h')
-rw-r--r-- | arch/arc/include/asm/irqflags.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arc/include/asm/irqflags.h b/arch/arc/include/asm/irqflags.h index 5cc1080d7c26..ccd84806b62f 100644 --- a/arch/arc/include/asm/irqflags.h +++ b/arch/arc/include/asm/irqflags.h @@ -95,7 +95,11 @@ static inline long arch_local_save_flags(void) */ static inline int arch_irqs_disabled_flags(unsigned long flags) { - return !(flags & (STATUS_E1_MASK)); + return !(flags & (STATUS_E1_MASK +#ifdef CONFIG_ARC_COMPACT_IRQ_LEVELS + | STATUS_E2_MASK +#endif + )); } static inline int arch_irqs_disabled(void) |