patch-2.1.121 linux/include/asm-arm/arch-ebsa285/irq.h

Next file: linux/include/asm-arm/arch-ebsa285/param.h
Previous file: linux/include/asm-arm/arch-ebsa285/dma.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.120/linux/include/asm-arm/arch-ebsa285/irq.h linux/include/asm-arm/arch-ebsa285/irq.h
@@ -1,34 +1,34 @@
 /*
- * include/asm-arm/arch-ebsa110/irq.h
+ * include/asm-arm/arch-ebsa285/irq.h
  *
- * Copyright (C) 1996,1997,1998 Russell King
+ * Copyright (C) 1996-1998 Russell King
+ *
+ * Changelog:
+ *   22-08-1998	RMK	Restructured IRQ routines
  */
 
-static __inline__ void mask_and_ack_irq(unsigned int irq)
+static void ebsa285_mask_irq(unsigned int irq)
 {
-	if (irq < 32)
-		*CSR_IRQ_DISABLE = 1 << irq;
+	*CSR_IRQ_DISABLE = 1 << irq;
 }
 
-static __inline__ void mask_irq(unsigned int irq)
+static void ebsa285_unmask_irq(unsigned int irq)
 {
-	if (irq < 32)
-		*CSR_IRQ_DISABLE = 1 << irq;
-}
-
-static __inline__ void unmask_irq(unsigned int irq)
-{
-	if (irq < 32)
-		*CSR_IRQ_ENABLE = 1 << irq;
+	*CSR_IRQ_ENABLE = 1 << irq;
 }
  
-static __inline__ unsigned long get_enabled_irqs(void)
-{
-	return 0;
-}
-
 static __inline__ void irq_init_irq(void)
 {
+	int irq;
+
 	*CSR_IRQ_DISABLE = -1;
 	*CSR_FIQ_DISABLE = -1;
+
+	for (irq = 0; irq < NR_IRQS; irq++) {
+		irq_desc[irq].valid	= 1;
+		irq_desc[irq].probe_ok	= 1;
+		irq_desc[irq].mask_ack	= ebsa285_mask_irq;
+		irq_desc[irq].mask	= ebsa285_mask_irq;
+		irq_desc[irq].unmask	= ebsa285_unmask_irq;
+	}
 }

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov