2 * linux/include/asm-arm/mach/irq.h
4 * Copyright (C) 1995-2000 Russell King.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
10 #ifndef __ASM_ARM_MACH_IRQ_H
11 #define __ASM_ARM_MACH_IRQ_H
14 unsigned int triggered: 1; /* IRQ has occurred */
15 unsigned int running : 1; /* IRQ is running */
16 unsigned int pending : 1; /* IRQ is pending */
17 unsigned int probing : 1; /* IRQ in use for a probe */
18 unsigned int probe_ok : 1; /* IRQ can be used for probe */
19 unsigned int valid : 1; /* IRQ claimable */
20 unsigned int noautoenable : 1; /* don't automatically enable IRQ */
21 unsigned int unused :25;
22 unsigned int disable_depth;
24 struct list_head pend;
26 void (*mask_ack)(unsigned int irq); /* Mask and acknowledge IRQ */
27 void (*mask)(unsigned int irq); /* Mask IRQ */
28 void (*unmask)(unsigned int irq); /* Unmask IRQ */
29 struct irqaction *action;
38 struct timer_list lck_timer;
41 extern struct irqdesc irq_desc[];
43 extern void (*init_arch_irq)(void);
44 extern int setup_arm_irq(int, struct irqaction *);
45 extern int get_fiq_list(char *);
46 extern void init_FIQ(void);