X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-arm%2Firq.h;fp=include%2Fasm-arm%2Firq.h;h=7772432d3fd7750506943eaf88ea7eda9e720a7d;hb=64ba3f394c830ec48a1c31b53dcae312c56f1604;hp=283af50a16cb359e7ee0709a0d81efb982cc952f;hpb=be1e6109ac94a859551f8e1774eb9a8469fe055c;p=linux-2.6.git diff --git a/include/asm-arm/irq.h b/include/asm-arm/irq.h index 283af50a1..7772432d3 100644 --- a/include/asm-arm/irq.h +++ b/include/asm-arm/irq.h @@ -21,13 +21,18 @@ struct irqaction; +extern void disable_irq_nosync(unsigned int); +extern void disable_irq(unsigned int); +extern void enable_irq(unsigned int); + /* - * Migration helpers + * These correspond with the SA_TRIGGER_* defines, and therefore the + * IRQRESOURCE_IRQ_* defines. */ -#define __IRQT_FALEDGE IRQ_TYPE_EDGE_FALLING -#define __IRQT_RISEDGE IRQ_TYPE_EDGE_RISING -#define __IRQT_LOWLVL IRQ_TYPE_LEVEL_LOW -#define __IRQT_HIGHLVL IRQ_TYPE_LEVEL_HIGH +#define __IRQT_RISEDGE (1 << 0) +#define __IRQT_FALEDGE (1 << 1) +#define __IRQT_HIGHLVL (1 << 2) +#define __IRQT_LOWLVL (1 << 3) #define IRQT_NOEDGE (0) #define IRQT_RISING (__IRQT_RISEDGE) @@ -35,7 +40,16 @@ struct irqaction; #define IRQT_BOTHEDGE (__IRQT_RISEDGE|__IRQT_FALEDGE) #define IRQT_LOW (__IRQT_LOWLVL) #define IRQT_HIGH (__IRQT_HIGHLVL) -#define IRQT_PROBE IRQ_TYPE_PROBE +#define IRQT_PROBE (1 << 4) + +int set_irq_type(unsigned int irq, unsigned int type); +void disable_irq_wake(unsigned int irq); +void enable_irq_wake(unsigned int irq); +int setup_irq(unsigned int, struct irqaction *); + +struct irqaction; +struct pt_regs; +int handle_IRQ_event(unsigned int, struct pt_regs *, struct irqaction *); extern void migrate_irqs(void); #endif