summaryrefslogtreecommitdiff
path: root/sys/dev/ic
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2013-11-14 12:16:02 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2013-11-14 12:16:02 +0000
commitb0fa27b37f545ca56466e40392fa1bcadbb5d4a9 (patch)
tree8c72532447985df720bf0b1387113eca5c63e969 /sys/dev/ic
parent022a2c0428dcc6312014dc24f0be4a756f374019 (diff)
replace workqs with tasks for handling resume
from kimberley manning
Diffstat (limited to 'sys/dev/ic')
-rw-r--r--sys/dev/ic/fxp.c9
-rw-r--r--sys/dev/ic/fxpvar.h4
2 files changed, 7 insertions, 6 deletions
diff --git a/sys/dev/ic/fxp.c b/sys/dev/ic/fxp.c
index 8bb5130add0..04486a5dac5 100644
--- a/sys/dev/ic/fxp.c
+++ b/sys/dev/ic/fxp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: fxp.c,v 1.112 2013/08/07 01:06:29 bluhm Exp $ */
+/* $OpenBSD: fxp.c,v 1.113 2013/11/14 12:16:01 dlg Exp $ */
/* $NetBSD: if_fxp.c,v 1.2 1997/06/05 02:01:55 thorpej Exp $ */
/*
@@ -47,7 +47,7 @@
#include <sys/socket.h>
#include <sys/syslog.h>
#include <sys/timeout.h>
-#include <sys/workq.h>
+#include <sys/task.h>
#include <net/if.h>
#include <net/if_dl.h>
@@ -305,8 +305,7 @@ fxp_activate(struct device *self, int act)
case DVACT_RESUME:
rv = config_activate_children(self, act);
if (ifp->if_flags & IFF_UP)
- workq_queue_task(NULL, &sc->sc_resume_wqt, 0,
- fxp_resume, sc, NULL);
+ task_add(systq, &sc->sc_resume_t);
break;
}
return (rv);
@@ -343,6 +342,8 @@ fxp_attach(struct fxp_softc *sc, const char *intrstr)
u_int8_t enaddr[6];
int i, err;
+ task_set(&sc->sc_resume_t, fxp_resume, sc, NULL);
+
/*
* Reset to a stable state.
*/
diff --git a/sys/dev/ic/fxpvar.h b/sys/dev/ic/fxpvar.h
index d331585c40e..adeed5a8930 100644
--- a/sys/dev/ic/fxpvar.h
+++ b/sys/dev/ic/fxpvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: fxpvar.h,v 1.35 2012/04/03 23:39:09 deraadt Exp $ */
+/* $OpenBSD: fxpvar.h,v 1.36 2013/11/14 12:16:01 dlg Exp $ */
/* $NetBSD: if_fxpvar.h,v 1.1 1997/06/05 02:01:58 thorpej Exp $ */
/*
@@ -142,7 +142,7 @@ struct fxp_softc {
u_int16_t sc_bundle_max; /* max # frames per interrupt (ucode) */
u_int16_t sc_min_size_mask; /* bit-mask describing the minimum
* size of frame that will be bundled */
- struct workq_task sc_resume_wqt;
+ struct task sc_resume_t;
u_int32_t *sc_ucodebuf;
size_t sc_ucodelen;