patch-2.4.6 linux/include/asm-mips/irq.h

Next file: linux/include/asm-mips/jazzdma.h
Previous file: linux/include/asm-mips/ioctls.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.5/linux/include/asm-mips/irq.h linux/include/asm-mips/irq.h
@@ -1,25 +1,39 @@
-/* $Id: irq.h,v 1.6 2000/01/26 00:07:45 ralf Exp $
- *
+/*
  * This file is subject to the terms and conditions of the GNU General Public
  * License.  See the file "COPYING" in the main directory of this archive
  * for more details.
  *
  * Copyright (C) 1994 by Waldorf GMBH, written by Ralf Baechle
- * Copyright (C) 1995, 1996, 1997, 1998 by Ralf Baechle
+ * Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 by Ralf Baechle
  */
 #ifndef _ASM_IRQ_H
 #define _ASM_IRQ_H
 
-#define NR_IRQS 64
+#include <linux/config.h>
+
+#define NR_IRQS 64		/* Largest number of ints of all machines.  */
 
 #define TIMER_IRQ 0
 
-extern int (*irq_cannonicalize)(int irq);
+#ifdef CONFIG_I8259
+static inline int irq_cannonicalize(int irq)
+{
+	return ((irq == 2) ? 9 : irq);
+}
+#else
+#define irq_cannonicalize(irq) (irq)	/* Sane hardware, sane code ... */
+#endif
 
 struct irqaction;
 extern int i8259_setup_irq(int irq, struct irqaction * new);
 extern void disable_irq(unsigned int);
+
+#ifdef CONFIG_ROTTEN_IRQ
 #define disable_irq_nosync	disable_irq
+#else
+extern void disable_irq_nosync(unsigned int);
+#endif
+
 extern void enable_irq(unsigned int);
 
 /* Machine specific interrupt initialization  */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)