12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #ifndef _H8300_IRQ_H_
- #define _H8300_IRQ_H_
- #include <asm/ptrace.h>
- #if defined(__H8300H__)
- #define NR_IRQS 64
- #define EXT_IRQ0 12
- #define EXT_IRQ1 13
- #define EXT_IRQ2 14
- #define EXT_IRQ3 15
- #define EXT_IRQ4 16
- #define EXT_IRQ5 17
- #define EXT_IRQ6 18
- #define EXT_IRQ7 19
- #define EXT_IRQS 5
- #include <asm/regs306x.h>
- #define h8300_clear_isr(irq) \
- do { \
- if (irq >= EXT_IRQ0 && irq <= EXT_IRQ5) \
- *(volatile unsigned char *)ISR &= ~(1 << (irq - EXT_IRQ0)); \
- } while(0)
- #define IER_REGS *(volatile unsigned char *)IER
- #endif
- #if defined(CONFIG_CPU_H8S)
- #define NR_IRQS 128
- #define EXT_IRQ0 16
- #define EXT_IRQ1 17
- #define EXT_IRQ2 18
- #define EXT_IRQ3 19
- #define EXT_IRQ4 20
- #define EXT_IRQ5 21
- #define EXT_IRQ6 22
- #define EXT_IRQ7 23
- #define EXT_IRQ8 24
- #define EXT_IRQ9 25
- #define EXT_IRQ10 26
- #define EXT_IRQ11 27
- #define EXT_IRQ12 28
- #define EXT_IRQ13 29
- #define EXT_IRQ14 30
- #define EXT_IRQ15 31
- #define EXT_IRQS 15
- #include <asm/regs267x.h>
- #define h8300_clear_isr(irq) \
- do { \
- if (irq >= EXT_IRQ0 && irq <= EXT_IRQ15) \
- *(volatile unsigned short *)ISR &= ~(1 << (irq - EXT_IRQ0)); \
- } while(0)
- #define IER_REGS *(volatile unsigned short *)IER
- #endif
- static __inline__ int irq_canonicalize(int irq)
- {
- return irq;
- }
- extern void enable_irq(unsigned int);
- extern void disable_irq(unsigned int);
- #define disable_irq_nosync(x) disable_irq(x)
- struct irqaction;
- struct pt_regs;
- int handle_IRQ_event(unsigned int, struct pt_regs *, struct irqaction *);
- #endif /* _H8300_IRQ_H_ */
|