8 #include <linux/module.h>
9 #include <linux/random.h>
15 #include <asm/trace.h>
25 static struct irq_desc bad_irq_desc = {
30 #ifdef CONFIG_CPUMASK_OFFSTACK
32 #error "Blackfin architecture does not support CONFIG_CPUMASK_OFFSTACK."
38 int i = *(loff_t *) v,
j;
54 for (action = action->
next; action; action = action->next)
64 seq_printf(p, " CORE Non Maskable Interrupt\n");
71 #ifdef CONFIG_DEBUG_STACKOVERFLOW
72 static void check_stack_overflow(
int irq)
79 pr_emerg(
"irq%i: possible stack overflow only %ld bytes free\n",
84 static inline void check_stack_overflow(
int irq) { }
88 static void maybe_lower_to_irq14(
void)
90 unsigned short pending, other_ints;
102 other_ints = pending & (pending - 1);
107 static inline void maybe_lower_to_irq14(
void) { }
115 #ifdef CONFIG_DO_IRQ_L1
120 struct pt_regs *old_regs = set_irq_regs(regs);
124 check_stack_overflow(irq);
135 maybe_lower_to_irq14();
139 set_irq_regs(old_regs);
146 #ifdef CONFIG_DEBUG_BFIN_HWTRACE_EXPAND
151 1 << CONFIG_DEBUG_BFIN_HWTRACE_EXPAND_LEN);