From: ? <uns...@us...> - 2002-06-03 02:43:48
|
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 |