mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-29 17:22:07 +00:00
ALSA: ump: Fix evaluation of MIDI 1.0 FB info
The m1.0 field of UMP Function Block info specifies whether the given
FB is a MIDI 1.0 port or not. When implementing the UMP support on
Linux, I somehow interpreted as if it were bit flags, but the field is
actually an enumeration from 0 to 2, where 2 means MIDI 1.0 *and* low
speed.
This patch corrects the interpretation and sets the right bit flags
depending on the m1.0 field of FB Info. This effectively fixes the
missing detection of MIDI 1.0 FB when m1.0 is 2.
Fixes: 37e0e14128
("ALSA: ump: Support UMP Endpoint and Function Block parsing")
Cc: <stable@vger.kernel.org>
Link: https://patch.msgid.link/20241127070059.8099-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
9ad467a2b2
commit
7be34f6fee
@ -788,7 +788,10 @@ static void fill_fb_info(struct snd_ump_endpoint *ump,
|
||||
info->ui_hint = buf->fb_info.ui_hint;
|
||||
info->first_group = buf->fb_info.first_group;
|
||||
info->num_groups = buf->fb_info.num_groups;
|
||||
info->flags = buf->fb_info.midi_10;
|
||||
if (buf->fb_info.midi_10 < 2)
|
||||
info->flags = buf->fb_info.midi_10;
|
||||
else
|
||||
info->flags = SNDRV_UMP_BLOCK_IS_MIDI1 | SNDRV_UMP_BLOCK_IS_LOWSPEED;
|
||||
info->active = buf->fb_info.active;
|
||||
info->midi_ci_version = buf->fb_info.midi_ci_version;
|
||||
info->sysex8_streams = buf->fb_info.sysex8_streams;
|
||||
|
Loading…
Reference in New Issue
Block a user