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
13 #include <linux/irq.h>
18 * This is internal. Do not use it.
20 extern void (*init_arch_irq)(void);
21 extern void init_FIQ(void);
22 extern int show_fiq_list(struct seq_file *, void *);
27 #define set_irq_chipdata(irq, d) set_irq_chip_data(irq, d)
28 #define get_irq_chipdata(irq) get_irq_chip_data(irq)
31 * Obsolete inline function for calling irq descriptor handlers.
33 static inline void desc_handle_irq(unsigned int irq, struct irq_desc *desc,
36 desc->handle_irq(irq, desc, regs);
39 void set_irq_flags(unsigned int irq, unsigned int flags);
41 #define IRQF_VALID (1 << 0)
42 #define IRQF_PROBE (1 << 1)
43 #define IRQF_NOAUTOEN (1 << 2)
46 * This is for easy migration, but should be changed in the source
48 #define do_level_IRQ handle_level_irq
49 #define do_edge_IRQ handle_edge_irq
50 #define do_simple_IRQ handle_simple_irq
51 #define irqdesc irq_desc
52 #define irqchip irq_chip
54 #define do_bad_IRQ(irq,desc,regs) \
56 spin_lock(&desc->lock); \
57 handle_bad_irq(irq, desc, regs); \
58 spin_unlock(&desc->lock); \
61 extern unsigned long irq_err_count;
62 static inline void ack_bad_irq(int irq)