From da32f974a05e11ec2f6c85cd01736b2965639b58 Mon Sep 17 00:00:00 2001 From: Matthew Wilcox Date: Fri, 11 Mar 2005 17:14:51 -0800 Subject: [PATCH] PA-RISC GSC interrupt fixes Two problems occurred with the recent switch to virtual interrupt numbers. The first is that two devices (eg Lasi PS/2 mouse and keyboard) can share the same physical interrupt and should therefore share the same virtual interrupt rather than have a new one assigned to them. Fix this by initialising the global_irq array to NO_IRQ, then checking the array before assigning a new one. The second is that some GSC devices (eg HIL and EISA) can have two interrupts; one for normal interrupts and the other for NMI or high-priority. To fix this, I introduced an auxiliary IRQ to the parisc_device and fill it in in Asp and Wax. Signed-off-by: Matthew Wilcox Signed-off-by: Linus Torvalds --- include/asm-parisc/parisc-device.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/asm-parisc/parisc-device.h b/include/asm-parisc/parisc-device.h index 594c1d91589b..ef69ab4b17a9 100644 --- a/include/asm-parisc/parisc-device.h +++ b/include/asm-parisc/parisc-device.h @@ -6,6 +6,7 @@ struct parisc_device { struct parisc_driver *driver; /* Driver for this device */ char name[80]; /* The hardware description */ int irq; + int aux_irq; /* Some devices have a second IRQ */ char hw_path; /* The module number on this bus */ unsigned int num_addrs; /* some devices have additional address ranges. */ -- cgit v1.2.3