irqreturn_t (*handler)(int, void *, struct pt_regs *),
unsigned long flags, const char *devname, void *dev_id)
{
- if (irq < IRQ1 || irq > IRQ7) {
+ if (irq < IRQ_AUTO_1 || irq > IRQ_AUTO_7) {
printk("%s: Incorrect IRQ %d from %s\n",
__FUNCTION__, irq, devname);
return -ENXIO;
void cpu_free_irq(unsigned int irq, void *dev_id)
{
- if (irq < IRQ1 || irq > IRQ7) {
+ if (irq < IRQ_AUTO_1 || irq > IRQ_AUTO_7) {
printk("%s: Incorrect IRQ %d\n", __FUNCTION__, irq);
return;
}
}
/* setup handler for ISA ints */
- cpu_request_irq(IRQ2, q40_irq2_handler, 0, "q40 ISA and master chip",
- NULL);
+ cpu_request_irq(IRQ_AUTO_2, q40_irq2_handler, 0,
+ "q40 ISA and master chip", NULL);
/* now enable some ints.. */
master_outb(1,EXT_ENABLE_REG); /* ISA IRQ 5-15 */
/* sun3/60 addr/irq for the lance chip. If your sun is different,
change this. */
#define LANCE_OBIO 0x120000
-#define LANCE_IRQ IRQ3
+#define LANCE_IRQ IRQ_AUTO_3
/* Debug level:
* 0 = silent, print only serious errors
#define IRQ_TYPE_FAST 1
#define IRQ_TYPE_PRIO 2
-#define IRQ_SPURIOUS (0)
-
-/* auto-vector interrupts */
-#define IRQ_AUTO_1 (1)
-#define IRQ_AUTO_2 (2)
-#define IRQ_AUTO_3 (3)
-#define IRQ_AUTO_4 (4)
-#define IRQ_AUTO_5 (5)
-#define IRQ_AUTO_6 (6)
-#define IRQ_AUTO_7 (7)
-
/* ST-MFP interrupts */
#define IRQ_MFP_BUSY (8)
#define IRQ_MFP_DCD (9)
#include <linux/interrupt.h>
/*
- * # of m68k interrupts
+ * # of m68k auto vector interrupts
*/
#define SYS_IRQS 8
* that routine requires service.
*/
-#define IRQ1 (1) /* level 1 interrupt */
-#define IRQ2 (2) /* level 2 interrupt */
-#define IRQ3 (3) /* level 3 interrupt */
-#define IRQ4 (4) /* level 4 interrupt */
-#define IRQ5 (5) /* level 5 interrupt */
-#define IRQ6 (6) /* level 6 interrupt */
-#define IRQ7 (7) /* level 7 interrupt (non-maskable) */
+#define IRQ_SPURIOUS 0
-/*
- * "Generic" interrupt sources
- */
+#define IRQ_AUTO_1 1 /* level 1 interrupt */
+#define IRQ_AUTO_2 2 /* level 2 interrupt */
+#define IRQ_AUTO_3 3 /* level 3 interrupt */
+#define IRQ_AUTO_4 4 /* level 4 interrupt */
+#define IRQ_AUTO_5 5 /* level 5 interrupt */
+#define IRQ_AUTO_6 6 /* level 6 interrupt */
+#define IRQ_AUTO_7 7 /* level 7 interrupt (non-maskable) */
-#define IRQ_SCHED_TIMER (8) /* interrupt source for scheduling timer */
+#define IRQ_USER 8
static __inline__ int irq_canonicalize(int irq)
{
#define IRQ_SRC(irq) (irq >> 3)
#define IRQ_IDX(irq) (irq & 7)
-#define IRQ_SPURIOUS (0)
-
-/* auto-vector interrupts */
-#define IRQ_AUTO_1 (1)
-#define IRQ_AUTO_2 (2)
-#define IRQ_AUTO_3 (3)
-#define IRQ_AUTO_4 (4)
-#define IRQ_AUTO_5 (5)
-#define IRQ_AUTO_6 (6)
-#define IRQ_AUTO_7 (7)
-
/* VIA1 interrupts */
#define IRQ_VIA1_0 (8) /* one second int. */
#define IRQ_VIA1_1 (9) /* VBlank int. */