12 #include <linux/ptrace.h>
13 #include <linux/errno.h>
14 #include <linux/signal.h>
15 #include <linux/sched.h>
18 #include <linux/timex.h>
19 #include <linux/random.h>
25 #include <linux/module.h>
26 #include <linux/bitops.h>
31 #include <asm/uaccess.h>
32 #include <asm/pgalloc.h>
33 #include <asm/delay.h>
36 #include <asm/gdb-stub.h>
38 #define set_IRR(N,A,B,C,D) __set_IRR(N, (A << 28) | (B << 24) | (C << 20) | (D << 16))
41 #ifdef CONFIG_FUJITSU_MB93493
45 #define __reg16(ADDR) (*(volatile unsigned short *)(ADDR))
59 static void frv_cpupic_ack(
struct irq_data *
d)
65 static void frv_cpupic_mask(
struct irq_data *
d)
70 static void frv_cpupic_mask_ack(
struct irq_data *
d)
77 static void frv_cpupic_unmask(
struct irq_data *
d)
82 static struct irq_chip frv_cpu_pic = {
84 .irq_ack = frv_cpupic_ack,
85 .irq_mask = frv_cpupic_mask,
86 .irq_mask_ack = frv_cpupic_mask_ack,
87 .irq_unmask = frv_cpupic_unmask,
118 for (level = 1; level <= 14; level++)
119 irq_set_chip_and_handler(level, &frv_cpu_pic,
147 #if defined(CONFIG_MB93091_VDK)
149 #elif defined(CONFIG_MB93093_PDK)
152 #error dont know external IRQ trigger levels for this setup
156 #ifdef CONFIG_FUJITSU_MB93493