Module Name: src Committed By: pgoyette Date: Sat Jun 4 03:31:10 UTC 2022
Modified Files: src/sys/dev: files.audio files.dev midi.c sequencer.c src/sys/modules: Makefile src/sys/modules/midi: Makefile src/sys/modules/sequencer: Makefile Added Files: src/sys/dev: midi_mod.c midi_seq_mod.c sequencer_mod.c src/sys/modules/midi_seq: Makefile midi_seq.ioconf Removed Files: src/sys/modules/midi: midi.ioconf src/sys/modules/sequencer: sequencer.ioconf Log Message: Combine the midi and sequencer modules into a single midi_seq module to avoid a circular dependency as noted in kern/56772. Retain minimal modules of the original names to accomodate auto-loading upon access to the /dev/xxx nodes. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/sys/dev/files.audio cvs rdiff -u -r1.8 -r1.9 src/sys/dev/files.dev cvs rdiff -u -r1.97 -r1.98 src/sys/dev/midi.c cvs rdiff -u -r0 -r1.1 src/sys/dev/midi_mod.c src/sys/dev/midi_seq_mod.c \ src/sys/dev/sequencer_mod.c cvs rdiff -u -r1.79 -r1.80 src/sys/dev/sequencer.c cvs rdiff -u -r1.265 -r1.266 src/sys/modules/Makefile cvs rdiff -u -r1.2 -r1.3 src/sys/modules/midi/Makefile cvs rdiff -u -r1.1 -r0 src/sys/modules/midi/midi.ioconf cvs rdiff -u -r0 -r1.1 src/sys/modules/midi_seq/Makefile \ src/sys/modules/midi_seq/midi_seq.ioconf cvs rdiff -u -r1.2 -r1.3 src/sys/modules/sequencer/Makefile cvs rdiff -u -r1.1 -r0 src/sys/modules/sequencer/sequencer.ioconf Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/files.audio diff -u src/sys/dev/files.audio:1.14 src/sys/dev/files.audio:1.15 --- src/sys/dev/files.audio:1.14 Sat Jan 25 19:22:05 2020 +++ src/sys/dev/files.audio Sat Jun 4 03:31:10 2022 @@ -1,4 +1,4 @@ -# $NetBSD: files.audio,v 1.14 2020/01/25 19:22:05 jmcneill Exp $ +# $NetBSD: files.audio,v 1.15 2022/06/04 03:31:10 pgoyette Exp $ defparam opt_audio.h AUDIO_BLK_MS @@ -23,7 +23,11 @@ file dev/audio/linear.c audio file dev/audio/audio.c audio needs-flag file dev/audio/audiobell.c spkr_audio needs-flag file dev/audio/mulaw.c audio -file dev/midi.c midi needs-flag +file dev/midi.c midi | sequencer needs-flag +file dev/midi_mod.c midi | sequencer needs-flag +file dev/midi_seq_mod.c midi | sequencer needs-flag file dev/midictl.c midisyn file dev/midisyn.c midisyn +file dev/sequencer.c midi | sequencer needs-flag +file dev/sequencer_mod.c midi | sequencer needs-flag file dev/spkr_audio.c spkr_audio needs-flag Index: src/sys/dev/files.dev diff -u src/sys/dev/files.dev:1.8 src/sys/dev/files.dev:1.9 --- src/sys/dev/files.dev:1.8 Sun Oct 10 13:03:09 2021 +++ src/sys/dev/files.dev Sat Jun 4 03:31:10 2022 @@ -1,4 +1,4 @@ -# $NetBSD: files.dev,v 1.8 2021/10/10 13:03:09 jmcneill Exp $ +# $NetBSD: files.dev,v 1.9 2022/06/04 03:31:10 pgoyette Exp $ file dev/bio.c bio needs-flag file dev/ccd.c ccd @@ -22,7 +22,6 @@ file dev/mm.c kern # XXX file dev/nullcons_subr.c nullcons needs-flag file dev/radio.c radio needs-flag file dev/random.c rnd needs-flag -file dev/sequencer.c sequencer needs-flag file dev/video.c video needs-flag file dev/vnd.c vnd file dev/ipmi.c ipmi needs-flag Index: src/sys/dev/midi.c diff -u src/sys/dev/midi.c:1.97 src/sys/dev/midi.c:1.98 --- src/sys/dev/midi.c:1.97 Sun May 22 11:27:35 2022 +++ src/sys/dev/midi.c Sat Jun 4 03:31:10 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: midi.c,v 1.97 2022/05/22 11:27:35 andvar Exp $ */ +/* $NetBSD: midi.c,v 1.98 2022/06/04 03:31:10 pgoyette Exp $ */ /* * Copyright (c) 1998, 2008 The NetBSD Foundation, Inc. @@ -31,11 +31,10 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: midi.c,v 1.97 2022/05/22 11:27:35 andvar Exp $"); +__KERNEL_RCSID(0, "$NetBSD: midi.c,v 1.98 2022/06/04 03:31:10 pgoyette Exp $"); #ifdef _KERNEL_OPT #include "midi.h" -#include "sequencer.h" #endif #include <sys/param.h> @@ -1900,45 +1899,3 @@ midi_attach_mi(const struct midi_hw_if * } #endif /* NMIDI > 0 || NMIDIBUS > 0 */ - -#ifdef _MODULE -#include "ioconf.c" - -devmajor_t midi_bmajor = -1, midi_cmajor = -1; -#endif - -MODULE(MODULE_CLASS_DRIVER, midi, "audio"); - -static int -midi_modcmd(modcmd_t cmd, void *arg) -{ - int error = 0; - -#ifdef _MODULE - switch (cmd) { - case MODULE_CMD_INIT: - error = devsw_attach(midi_cd.cd_name, NULL, &midi_bmajor, - &midi_cdevsw, &midi_cmajor); - if (error) - break; - - error = config_init_component(cfdriver_ioconf_midi, - cfattach_ioconf_midi, cfdata_ioconf_midi); - if (error) { - devsw_detach(NULL, &midi_cdevsw); - } - break; - case MODULE_CMD_FINI: - error = config_fini_component(cfdriver_ioconf_midi, - cfattach_ioconf_midi, cfdata_ioconf_midi); - if (error == 0) - devsw_detach(NULL, &midi_cdevsw); - break; - default: - error = ENOTTY; - break; - } -#endif - - return error; -} Index: src/sys/dev/sequencer.c diff -u src/sys/dev/sequencer.c:1.79 src/sys/dev/sequencer.c:1.80 --- src/sys/dev/sequencer.c:1.79 Sat Apr 16 11:13:10 2022 +++ src/sys/dev/sequencer.c Sat Jun 4 03:31:10 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: sequencer.c,v 1.79 2022/04/16 11:13:10 riastradh Exp $ */ +/* $NetBSD: sequencer.c,v 1.80 2022/06/04 03:31:10 pgoyette Exp $ */ /* * Copyright (c) 1998, 2008 The NetBSD Foundation, Inc. @@ -55,10 +55,9 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sequencer.c,v 1.79 2022/04/16 11:13:10 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sequencer.c,v 1.80 2022/06/04 03:31:10 pgoyette Exp $"); #ifdef _KERNEL_OPT -#include "sequencer.h" #include "midi.h" #endif @@ -76,7 +75,6 @@ __KERNEL_RCSID(0, "$NetBSD: sequencer.c, #include <sys/kernel.h> #include <sys/kmem.h> #include <sys/midiio.h> -#include <sys/module.h> #include <sys/pcq.h> #include <sys/poll.h> #include <sys/proc.h> @@ -1656,21 +1654,6 @@ midiseq_loadpatch(struct midi_dev *md, static dev_type_open(midiopen); static dev_type_close(midiclose); -const struct cdevsw midi_cdevsw = { - .d_open = midiopen, - .d_close = midiclose, - .d_read = noread, - .d_write = nowrite, - .d_ioctl = noioctl, - .d_stop = nostop, - .d_tty = notty, - .d_poll = nopoll, - .d_mmap = nommap, - .d_kqfilter = nokqfilter, - .d_discard = nodiscard, - .d_flag = D_OTHER | D_MPSAFE -}; - /* * If someone has a sequencer, but no midi devices there will * be unresolved references, so we provide little stubs. @@ -1688,8 +1671,6 @@ midiopen(dev_t dev, int flags, int ifmt, return ENXIO; } -struct cfdriver midi_cd; - void midi_getinfo(dev_t dev, struct midi_info *mi) { @@ -1709,46 +1690,3 @@ midi_writebytes(int unit, u_char *bf, in return ENXIO; } #endif /* NMIDI == 0 */ - -#ifdef _MODULE -#include "ioconf.c" - -devmajor_t sequencer_bmajor = -1, sequencer_cmajor = -1; -#endif - -MODULE(MODULE_CLASS_DRIVER, sequencer, "midi"); - -static int -sequencer_modcmd(modcmd_t cmd, void *arg) -{ - int error = 0; - -#ifdef _MODULE - switch (cmd) { - case MODULE_CMD_INIT: - error = devsw_attach(sequencer_cd.cd_name, - NULL, &sequencer_bmajor, - &sequencer_cdevsw, &sequencer_cmajor); - if (error) - break; - - error = config_init_component(cfdriver_ioconf_sequencer, - cfattach_ioconf_sequencer, cfdata_ioconf_sequencer); - if (error) { - devsw_detach(NULL, &sequencer_cdevsw); - } - break; - case MODULE_CMD_FINI: - error = config_fini_component(cfdriver_ioconf_sequencer, - cfattach_ioconf_sequencer, cfdata_ioconf_sequencer); - if (error == 0) - devsw_detach(NULL, &sequencer_cdevsw); - break; - default: - error = ENOTTY; - break; - } -#endif - - return error; -} Index: src/sys/modules/Makefile diff -u src/sys/modules/Makefile:1.265 src/sys/modules/Makefile:1.266 --- src/sys/modules/Makefile:1.265 Thu Apr 14 16:50:26 2022 +++ src/sys/modules/Makefile Sat Jun 4 03:31:10 2022 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.265 2022/04/14 16:50:26 pgoyette Exp $ +# $NetBSD: Makefile,v 1.266 2022/06/04 03:31:10 pgoyette Exp $ .include <bsd.own.mk> @@ -115,6 +115,7 @@ SUBDIR+= luasystm SUBDIR+= luapmf SUBDIR+= mfs SUBDIR+= midi +SUBDIR+= midi_seq SUBDIR+= miiverbose SUBDIR+= miniroot SUBDIR+= mqueue Index: src/sys/modules/midi/Makefile diff -u src/sys/modules/midi/Makefile:1.2 src/sys/modules/midi/Makefile:1.3 --- src/sys/modules/midi/Makefile:1.2 Sun Feb 17 04:05:54 2019 +++ src/sys/modules/midi/Makefile Sat Jun 4 03:31:10 2022 @@ -1,20 +1,12 @@ -# $NetBSD: Makefile,v 1.2 2019/02/17 04:05:54 rin Exp $ +# $NetBSD: Makefile,v 1.3 2022/06/04 03:31:10 pgoyette Exp $ */ .include "../Makefile.inc" .PATH: ${S}/dev KMOD= midi -IOCONF= midi.ioconf -SRCS= midi.c \ - midictl.c \ - midisyn.c +SRCS= midi_mod.c CPPFLAGS+= -DNMIDI=1 -DNSEQUENCER=1 -# Rather than our usual WARNS=5, we need to use 3, since there are a -# lot of signed-vs-unsigned compares - -WARNS= 3 - .include <bsd.kmodule.mk> Index: src/sys/modules/sequencer/Makefile diff -u src/sys/modules/sequencer/Makefile:1.2 src/sys/modules/sequencer/Makefile:1.3 --- src/sys/modules/sequencer/Makefile:1.2 Sun Feb 17 04:05:57 2019 +++ src/sys/modules/sequencer/Makefile Sat Jun 4 03:31:10 2022 @@ -1,18 +1,12 @@ -# $NetBSD: Makefile,v 1.2 2019/02/17 04:05:57 rin Exp $ +# $NetBSD: Makefile,v 1.3 2022/06/04 03:31:10 pgoyette Exp $ .include "../Makefile.inc" .PATH: ${S}/dev KMOD= sequencer -IOCONF= sequencer.ioconf -SRCS= sequencer.c +SRCS= sequencer_mod.c CPPFLAGS+= -DNSEQUENCER=1 -DNMIDI=1 -# Rather than our usual WARNS=5, we need to use 3, since there are a -# lot of signed-vs-unsigned compares - -WARNS= 3 - .include <bsd.kmodule.mk> Added files: Index: src/sys/dev/midi_mod.c diff -u /dev/null src/sys/dev/midi_mod.c:1.1 --- /dev/null Sat Jun 4 03:31:11 2022 +++ src/sys/dev/midi_mod.c Sat Jun 4 03:31:10 2022 @@ -0,0 +1,63 @@ +/* $NetBSD: midi_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $ */ + +/* + * Copyright (c) 2022 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Paul Goyette + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__KERNEL_RCSID(0, "$NetBSD: midi_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $"); + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/kernel.h> +#include <sys/module.h> + +/* + * The midi module itself doesn't do anything. It exists only to + * ensure that the combo-module for midi-plus-sequencer is loaded. + * This allows us to have both midi and sequencer code to refer + * to each other, avoiding a circular module dependency. + */ + +MODULE(MODULE_CLASS_DRIVER, midi, "midi_seq"); + +static int +midi_modcmd(modcmd_t cmd, void *arg) +{ + int error = 0; + + switch (cmd) { + case MODULE_CMD_INIT: + case MODULE_CMD_FINI: + break; + default: + error = ENOTTY; + break; + } + return error; +} Index: src/sys/dev/midi_seq_mod.c diff -u /dev/null src/sys/dev/midi_seq_mod.c:1.1 --- /dev/null Sat Jun 4 03:31:11 2022 +++ src/sys/dev/midi_seq_mod.c Sat Jun 4 03:31:10 2022 @@ -0,0 +1,123 @@ +/* $NetBSD: midi_seq_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $ */ + +/* + * Copyright (c) 1998, 2008 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Lennart Augustsson (augus...@netbsd.org), (MIDI FST and Active + * Sense handling) Chapman Flack (c...@netbsd.org), and Andrew Doran. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__KERNEL_RCSID(0, "$NetBSD: midi_seq_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $"); + +#ifdef _KERNEL_OPT +#include "midi.h" +#endif + +#include <sys/param.h> +#include <sys/ioctl.h> +#include <sys/fcntl.h> +#include <sys/vnode.h> +#include <sys/select.h> +#include <sys/poll.h> +#include <sys/proc.h> +#include <sys/systm.h> +#include <sys/callout.h> +#include <sys/syslog.h> +#include <sys/kernel.h> +#include <sys/signalvar.h> +#include <sys/conf.h> +#include <sys/audioio.h> +#include <sys/midiio.h> +#include <sys/device.h> +#include <sys/intr.h> +#include <sys/module.h> + +#include <dev/audio/audio_if.h> +#include <dev/midi_if.h> +#include <dev/midivar.h> + +#include "ioconf.h" + +extern struct cfdriver sequencer_cd; +extern struct cdevsw midi_cdevsw; +extern struct cdevsw sequencer_cdevsw; + +#ifdef _MODULE +#include "ioconf.c" + +CFDRIVER_DECL(sequencer, DV_DULL, NULL); + +devmajor_t midi_bmajor = -1, midi_cmajor = -1; +devmajor_t sequencer_bmajor = -1, sequencer_cmajor = -1; +#endif + +MODULE(MODULE_CLASS_DRIVER, midi_seq, "audio"); + +static int +midi_seq_modcmd(modcmd_t cmd, void *arg) +{ + int error = 0; + +#ifdef _MODULE + switch (cmd) { + case MODULE_CMD_INIT: + error = devsw_attach(midi_cd.cd_name, NULL, &midi_bmajor, + &midi_cdevsw, &midi_cmajor); + if (error) + break; + + error = devsw_attach(sequencer_cd.cd_name, + NULL, &sequencer_bmajor, + &sequencer_cdevsw, &sequencer_cmajor); + if (error) { + devsw_detach(NULL, &midi_cdevsw); + break; + } + + error = config_init_component(cfdriver_ioconf_midi_seq, + cfattach_ioconf_midi_seq, cfdata_ioconf_midi_seq); + if (error) { + devsw_detach(NULL, &sequencer_cdevsw); + devsw_detach(NULL, &midi_cdevsw); + } + break; + case MODULE_CMD_FINI: + error = config_fini_component(cfdriver_ioconf_midi_seq, + cfattach_ioconf_midi_seq, cfdata_ioconf_midi_seq); + if (error == 0) { + devsw_detach(NULL, &sequencer_cdevsw); + devsw_detach(NULL, &midi_cdevsw); + } + break; + default: + error = ENOTTY; + break; + } +#endif + + return error; +} Index: src/sys/dev/sequencer_mod.c diff -u /dev/null src/sys/dev/sequencer_mod.c:1.1 --- /dev/null Sat Jun 4 03:31:11 2022 +++ src/sys/dev/sequencer_mod.c Sat Jun 4 03:31:10 2022 @@ -0,0 +1,63 @@ +/* $NetBSD: sequencer_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $ */ + +/* + * Copyright (c) 2022 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Paul Goyette + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__KERNEL_RCSID(0, "$NetBSD: sequencer_mod.c,v 1.1 2022/06/04 03:31:10 pgoyette Exp $"); + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/kernel.h> +#include <sys/module.h> + +/* + * The sequencer module itself doesn't do anything. It exists only to + * ensure that the combo-module for midi-plus-sequencer is loaded. This + * allows us to have both midi and sequencer code to refer to each other, + * avoiding a circular module dependency. + */ + +MODULE(MODULE_CLASS_DRIVER, sequencer, "midi_seq"); + +static int +sequencer_modcmd(modcmd_t cmd, void *arg) +{ + int error = 0; + + switch (cmd) { + case MODULE_CMD_INIT: + case MODULE_CMD_FINI: + break; + default: + error = ENOTTY; + break; + } + return error; +} Index: src/sys/modules/midi_seq/Makefile diff -u /dev/null src/sys/modules/midi_seq/Makefile:1.1 --- /dev/null Sat Jun 4 03:31:11 2022 +++ src/sys/modules/midi_seq/Makefile Sat Jun 4 03:31:10 2022 @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.1 2022/06/04 03:31:10 pgoyette Exp $ + +.include "../Makefile.inc" + +.PATH: ${S}/dev + +KMOD= midi_seq +IOCONF= midi_seq.ioconf + +SRCS= midi_seq_mod.c +SRCS+= midi.c \ + midictl.c \ + midisyn.c +SRCS+= sequencer.c + +CPPFLAGS+= -DNMIDI=1 -DNSEQUENCER=1 + +# Rather than our usual WARNS=5, we need to use 3, since there are a +# lot of signed-vs-unsigned compares + +WARNS= 3 + +.include <bsd.kmodule.mk> Index: src/sys/modules/midi_seq/midi_seq.ioconf diff -u /dev/null src/sys/modules/midi_seq/midi_seq.ioconf:1.1 --- /dev/null Sat Jun 4 03:31:11 2022 +++ src/sys/modules/midi_seq/midi_seq.ioconf Sat Jun 4 03:31:10 2022 @@ -0,0 +1,11 @@ +# $NetBSD: midi_seq.ioconf,v 1.1 2022/06/04 03:31:10 pgoyette Exp $ + +ioconf midi_seq + +include "conf/files" + +pseudo-root midibus* + +midi* at midibus? + +pseudo-device sequencer