diff options
author | Greg Ungerer <gerg@snapgear.com> | 2005-11-07 14:09:50 +1000 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-07 08:00:47 -0800 |
commit | 2ed5e6d09e266bd2288d49aaaf240ed8c468c13c (patch) | |
tree | 4cd700790fbaf7709dd3218970e457927759738d /include/asm-m68knommu/irqnode.h | |
parent | 562d2f8ce4e463e1427ddfab5e84440323856f43 (diff) | |
download | blackbird-op-linux-2ed5e6d09e266bd2288d49aaaf240ed8c468c13c.tar.gz blackbird-op-linux-2ed5e6d09e266bd2288d49aaaf240ed8c468c13c.zip |
[PATCH] m68knommu: move some platform irq support out of irq.h
Move some of the m68knommu platform specific irq core support
to its own header, irqnode.h. Having it in asm-m68knommu/irq.h
causes some build pain, since it is included in a number of
common code places (and not all the required definitions will
be included at these places).
Signed-off-by: Greg Ungerer <gerg@uclinux.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-m68knommu/irqnode.h')
-rw-r--r-- | include/asm-m68knommu/irqnode.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/include/asm-m68knommu/irqnode.h b/include/asm-m68knommu/irqnode.h new file mode 100644 index 000000000000..a2503dfc554c --- /dev/null +++ b/include/asm-m68knommu/irqnode.h @@ -0,0 +1,36 @@ +#ifndef _M68K_IRQNODE_H_ +#define _M68K_IRQNODE_H_ + +#include <linux/interrupt.h> + +/* + * This structure is used to chain together the ISRs for a particular + * interrupt source (if it supports chaining). + */ +typedef struct irq_node { + irqreturn_t (*handler)(int, void *, struct pt_regs *); + unsigned long flags; + void *dev_id; + const char *devname; + struct irq_node *next; +} irq_node_t; + +/* + * This structure has only 4 elements for speed reasons + */ +typedef struct irq_handler { + irqreturn_t (*handler)(int, void *, struct pt_regs *); + unsigned long flags; + void *dev_id; + const char *devname; +} irq_handler_t; + +/* count of spurious interrupts */ +extern volatile unsigned int num_spurious; + +/* + * This function returns a new irq_node_t + */ +extern irq_node_t *new_irq_node(void); + +#endif /* _M68K_IRQNODE_H_ */ |