Module Name: src
Committed By: tsutsui
Date: Mon Apr 12 13:05:25 UTC 2010
Modified Files:
src/sys/arch/atari/dev: lpt.c
Log Message:
Replace old MD sicallback functions with MI softint(9).
To generate a diff of this commit:
cvs rdiff -u -r1.32 -r1.33 src/sys/arch/atari/dev/lpt.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/atari/dev/lpt.c
diff -u src/sys/arch/atari/dev/lpt.c:1.32 src/sys/arch/atari/dev/lpt.c:1.33
--- src/sys/arch/atari/dev/lpt.c:1.32 Mon Nov 23 00:11:43 2009
+++ src/sys/arch/atari/dev/lpt.c Mon Apr 12 13:05:25 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: lpt.c,v 1.32 2009/11/23 00:11:43 rmind Exp $ */
+/* $NetBSD: lpt.c,v 1.33 2010/04/12 13:05:25 tsutsui Exp $ */
/*
* Copyright (c) 1996 Leo Weppelman
@@ -56,7 +56,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lpt.c,v 1.32 2009/11/23 00:11:43 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lpt.c,v 1.33 2010/04/12 13:05:25 tsutsui Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -104,6 +104,7 @@
u_char sc_flags;
#define LPT_AUTOLF 0x20 /* automatic LF on CR XXX: LWP - not yet... */
#define LPT_NOINTR 0x40 /* do not use interrupt */
+ void *sc_sicookie;
};
#define LPTUNIT(s) (minor(s) & 0x1f)
@@ -118,9 +119,9 @@
static void lptwakeup (void *arg);
static int pushbytes (struct lpt_softc *);
-static void lptpseudointr (struct lpt_softc *);
+static void lptpseudointr (void *);
int lptintr (struct lpt_softc *);
-int lpthwintr (struct lpt_softc *, int);
+int lpthwintr (void *);
/*
@@ -166,6 +167,7 @@
if (intr_establish(0, USER_VEC, 0, (hw_ifun_t)lpthwintr, sc) == NULL)
aprint_error_dev(dp, "Can't establish interrupt\n");
ym2149_strobe(1);
+ sc->sc_sicookie = softint_establish(SOFTINT_SERIAL, lptpseudointr, sc);
callout_init(&sc->sc_wakeup_ch, 0);
}
@@ -382,21 +384,24 @@
}
static void
-lptpseudointr(struct lpt_softc *sc)
+lptpseudointr(void *arg)
{
+ struct lpt_softc *sc;
int s;
+ sc = arg;
s = spltty();
lptintr(sc);
splx(s);
}
int
-lpthwintr(struct lpt_softc *sc, int sr)
+lpthwintr(void *arg)
{
- if (!BASEPRI(sr))
- add_sicallback((si_farg)lptpseudointr, sc, 0);
- else lptpseudointr(sc);
+ struct lpt_softc *sc;
+
+ sc = arg;
+ softint_schedule(sc->sc_sicookie);
return 1;
}