summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_cons.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2014-09-22 14:27:26 +0000
committerjhb <jhb@FreeBSD.org>2014-09-22 14:27:26 +0000
commitd08fb7f87738c5246eb1e0e0ec10b71a79d855be (patch)
treeaf06f24af9103896dd67b86a5c9a2367326e52ac /sys/kern/kern_cons.c
parentfe74bc61638e2114cbcda81fc1e045226717fe34 (diff)
downloadFreeBSD-src-d08fb7f87738c5246eb1e0e0ec10b71a79d855be.zip
FreeBSD-src-d08fb7f87738c5246eb1e0e0ec10b71a79d855be.tar.gz
Convert from timeout(9) to callout(9).
Diffstat (limited to 'sys/kern/kern_cons.c')
-rw-r--r--sys/kern/kern_cons.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/kern/kern_cons.c b/sys/kern/kern_cons.c
index da157ec..a6ccf62 100644
--- a/sys/kern/kern_cons.c
+++ b/sys/kern/kern_cons.c
@@ -607,6 +607,7 @@ SYSINIT(cndev, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, cn_drvinit, NULL);
#ifdef HAS_TIMER_SPKR
static int beeping;
+static struct callout beeping_timer;
static void
sysbeepstop(void *chan)
@@ -629,11 +630,18 @@ sysbeep(int pitch, int period)
timer_spkr_setfreq(pitch);
if (!beeping) {
beeping = period;
- timeout(sysbeepstop, (void *)NULL, period);
+ callout_reset(&beeping_timer, period, sysbeepstop, NULL);
}
return (0);
}
+static void
+sysbeep_init(void *unused)
+{
+
+ callout_init(&beeping_timer, CALLOUT_MPSAFE);
+}
+SYSINIT(sysbeep, SI_SUB_SOFTINTR, SI_ORDER_ANY, sysbeep_init, NULL);
#else
/*
OpenPOWER on IntegriCloud