diff options
author | Takashi Iwai <tiwai@suse.de> | 2009-09-10 15:32:56 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2009-09-10 15:32:56 +0200 |
commit | 0f23c5cc50550f194e71e694f2b4433356dd99ea (patch) | |
tree | 4fc923c6f4eb1da3b8cf700054076693afb67a67 /sound/core/seq/seq_midi.c | |
parent | 8a3351bbb93b15ec5d35fd4b3e6e971d6285e674 (diff) | |
parent | 2d4b842014dc76a81abced47ef27177eedb9deba (diff) | |
download | kernel_samsung_smdk4412-0f23c5cc50550f194e71e694f2b4433356dd99ea.zip kernel_samsung_smdk4412-0f23c5cc50550f194e71e694f2b4433356dd99ea.tar.gz kernel_samsung_smdk4412-0f23c5cc50550f194e71e694f2b4433356dd99ea.tar.bz2 |
Merge branch 'topic/midi' into for-linus
* topic/midi:
sound: rawmidi: disable active-sensing-on-close by default
sound: seq_oss_midi: remove magic numbers
sound: seq_midi: do not send MIDI reset when closing
seq-midi: always log message on output overrun
Diffstat (limited to 'sound/core/seq/seq_midi.c')
-rw-r--r-- | sound/core/seq/seq_midi.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sound/core/seq/seq_midi.c b/sound/core/seq/seq_midi.c index 4d26146..ebaf1b5 100644 --- a/sound/core/seq/seq_midi.c +++ b/sound/core/seq/seq_midi.c @@ -120,7 +120,8 @@ static int dump_midi(struct snd_rawmidi_substream *substream, const char *buf, i return -EINVAL; runtime = substream->runtime; if ((tmp = runtime->avail) < count) { - snd_printd("warning, output event was lost (count = %i, available = %i)\n", count, tmp); + if (printk_ratelimit()) + snd_printk(KERN_ERR "MIDI output buffer overrun\n"); return -ENOMEM; } if (snd_rawmidi_kernel_write(substream, buf, count) < count) @@ -236,6 +237,7 @@ static int midisynth_use(void *private_data, struct snd_seq_port_subscribe *info memset(¶ms, 0, sizeof(params)); params.avail_min = 1; params.buffer_size = output_buffer_size; + params.no_active_sensing = 1; if ((err = snd_rawmidi_output_params(msynth->output_rfile.output, ¶ms)) < 0) { snd_rawmidi_kernel_release(&msynth->output_rfile); return err; @@ -248,12 +250,9 @@ static int midisynth_use(void *private_data, struct snd_seq_port_subscribe *info static int midisynth_unuse(void *private_data, struct snd_seq_port_subscribe *info) { struct seq_midisynth *msynth = private_data; - unsigned char buf = 0xff; /* MIDI reset */ if (snd_BUG_ON(!msynth->output_rfile.output)) return -EINVAL; - /* sending single MIDI reset message to shut the device up */ - snd_rawmidi_kernel_write(msynth->output_rfile.output, &buf, 1); snd_rawmidi_drain_output(msynth->output_rfile.output); return snd_rawmidi_kernel_release(&msynth->output_rfile); } |