diff options
author | jhb <jhb@FreeBSD.org> | 2014-09-22 14:27:26 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2014-09-22 14:27:26 +0000 |
commit | d08fb7f87738c5246eb1e0e0ec10b71a79d855be (patch) | |
tree | af06f24af9103896dd67b86a5c9a2367326e52ac /sys/kern/kern_cons.c | |
parent | fe74bc61638e2114cbcda81fc1e045226717fe34 (diff) | |
download | FreeBSD-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.c | 10 |
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 /* |