summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/labpc.c
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>1997-09-21 21:41:49 +0000
committergibbs <gibbs@FreeBSD.org>1997-09-21 21:41:49 +0000
commite1b0aaaa7646122022e6179a0b6406809f2126b8 (patch)
tree453c2e0b2fbd7526c2bfa12a66b852f740856480 /sys/i386/isa/labpc.c
parentdc043d9d0aa92d02293099dc6adcabe0e6c972cb (diff)
downloadFreeBSD-src-e1b0aaaa7646122022e6179a0b6406809f2126b8.zip
FreeBSD-src-e1b0aaaa7646122022e6179a0b6406809f2126b8.tar.gz
aha1542.c aic6360.c cy.c fd.c ft.c
if_ie.c if_wl.c if_zp.c isa.c isa_device.h labpc.c mcd.c ncr5380.c scd.c seagate.c si.c sio.c tw.c ultra14f.c wcd.c wd.c: Update for changes in the callout interface. apic_vector.s icu_vector.s ipl.s ipl_funcs.c: Add CAM software/hardware interrupt support.
Diffstat (limited to 'sys/i386/isa/labpc.c')
-rw-r--r--sys/i386/isa/labpc.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/i386/isa/labpc.c b/sys/i386/isa/labpc.c
index 003189c..39b374d 100644
--- a/sys/i386/isa/labpc.c
+++ b/sys/i386/isa/labpc.c
@@ -140,6 +140,11 @@ struct ctlr
*/
u_char dcr_val, dcr_is;
+ /*
+ * Handle for canceling our timeout.
+ */
+ struct callout_handle ch;
+
/* Device configuration structure:
*/
#ifdef DEVFS
@@ -314,7 +319,7 @@ done_and_start_next(struct ctlr *ctlr, struct buf *bp, int err)
ctlr->start_queue.b_actf = bp->b_actf;
bp_done(bp, err);
- untimeout(tmo_stop, ctlr);
+ untimeout(tmo_stop, ctlr, ctlr->ch);
start(ctlr);
}
@@ -388,7 +393,6 @@ labpcinit(void)
if (labpcs)
{
bzero(labpcs, NLABPC * sizeof(struct cltr *));
- return 1;
}
return 0;
}
@@ -464,6 +468,7 @@ labpcattach(struct isa_device *dev)
{
struct ctlr *ctlr = labpcs[dev->id_unit];
+ callout_handle_init(&ctlr->ch);
ctlr->sample_us = (1000000.0 / (double)LABPC_DEFAULT_HERZ) + .50;
reset(ctlr);
@@ -796,7 +801,7 @@ start(struct ctlr *ctlr)
(*ctlr->intr)(ctlr);
}
- timeout(tmo_stop, ctlr, ctlr->tmo);
+ ctlr->ch = timeout(tmo_stop, ctlr, ctlr->tmo);
}
static void
OpenPOWER on IntegriCloud