summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/alog.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1998-10-22 05:58:45 +0000
committerbde <bde@FreeBSD.org>1998-10-22 05:58:45 +0000
commitdf88297cad3e438e774e13137af8eaff53c0fc7f (patch)
treed694ec5d94b6e29be85865e36be61cbb2bea66dc /sys/i386/isa/alog.c
parent7a07480a8f242db0c438040f3beb4ce7b2c7cde2 (diff)
downloadFreeBSD-src-df88297cad3e438e774e13137af8eaff53c0fc7f.zip
FreeBSD-src-df88297cad3e438e774e13137af8eaff53c0fc7f.tar.gz
Initialize isa_devtab entries for interrupt handlers in individual
device drivers, not in ioconf.c. Use a different hack in isa_device.h so that a new config(8) is not required yet. pc98 parts approved by: kato
Diffstat (limited to 'sys/i386/isa/alog.c')
-rw-r--r--sys/i386/isa/alog.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/i386/isa/alog.c b/sys/i386/isa/alog.c
index 8fbe576..b01d2dc 100644
--- a/sys/i386/isa/alog.c
+++ b/sys/i386/isa/alog.c
@@ -189,6 +189,7 @@ typedef struct
static int alog_probe (struct isa_device *idp); /* Check for alog board */
static int alog_attach (struct isa_device *idp); /* Take alog board */
+static ointhand2_t alogintr;
static int sync_clock2 (int unit, long period); /* setup clock 2 period */
static int putfifo (talog_chan *pchan, u_short fifoent);
static int alog_open (dev_t dev, int oflags, int devtype, struct proc *p);
@@ -525,6 +526,7 @@ static int alog_attach (struct isa_device *idp)
talog_unit *info; /* pointer to driver specific info for unit */
int chan; /* the channel used for creating devfs nodes */
+ idp->id_ointr = alogintr;
if (!(info = malloc(sizeof(*info), M_DEVBUF, M_NOWAIT)))
{
printf ("alog%d: cannot allocate driver storage\n", unit);
@@ -555,7 +557,7 @@ static int alog_attach (struct isa_device *idp)
/* Unit interrupt handling routine (interrupts generated by clock 2) */
-void alogintr (int unit)
+static void alogintr (int unit)
{
talog_unit *info = alog_unit[unit];
int iobase = info->isaunit->id_iobase;
OpenPOWER on IntegriCloud