Update of /cvsroot/linux-vax/kernel-2.4/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv28816/drivers/char
Modified Files:
vxt2694.c
Log Message:
Kludge to share interrupts between VXT serial and network devices
Index: vxt2694.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/char/vxt2694.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- vxt2694.c 3 Jun 2002 02:05:21 -0000 1.2
+++ vxt2694.c 3 Jun 2002 02:43:45 -0000 1.3
@@ -161,6 +161,23 @@
}
/*
+ * kludge for interrupt sharing with vaxsgec
+ */
+
+void (*net_inthandler_func)(int vector, void *data, struct pt_regs *fp) = NULL;
+void *net_inthandler_data;
+
+static void vxtserial_interrupt(int vector, void *data, struct pt_regs *fp)
+{
+ sc29c94_interrupt(vector, data, fp);
+ if(net_inthandler_func != NULL) {
+ net_inthandler_func(vector, net_inthandler_data, fp);
+ } else {
+ printk("@");
+ }
+}
+
+/*
* initialization code
*/
@@ -203,7 +220,7 @@
writereg(&the_quart, SC26C94_REG_IVR, 0x42);
irq = 0x42;
if(irq!=0) {
- request_irq(irq, sc29c94_interrupt, SA_INTERRUPT, "sc29c94", &the_quart);
+ request_irq(irq, vxtserial_interrupt, SA_INTERRUPT, "sc29c94", &the_quart);
}
#if 0
|