From: Takashi Iwai Date: Mon, 22 Jul 2024 14:06:06 +0000 (+0200) Subject: ALSA: ump: Force 1 Group for MIDI1 FBs X-Git-Tag: v6.11-rc1~32^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ac29d8ae05b770ed3f52d7a60908ab9b126f69d7;p=thirdparty%2Fkernel%2Flinux.git ALSA: ump: Force 1 Group for MIDI1 FBs When a Function Block declares it being a legacy MIDI1 device, it has to be only with a single UMP Group. Correct the attribute when a device declares it wrongly. Fixes: 37e0e14128e0 ("ALSA: ump: Support UMP Endpoint and Function Block parsing") Cc: Link: https://patch.msgid.link/20240722140610.10845-1-tiwai@suse.de Signed-off-by: Takashi Iwai --- diff --git a/sound/core/ump.c b/sound/core/ump.c index b325fcfa77d06..0f0d7e895c5aa 100644 --- a/sound/core/ump.c +++ b/sound/core/ump.c @@ -733,6 +733,12 @@ static void fill_fb_info(struct snd_ump_endpoint *ump, info->block_id, info->direction, info->active, info->first_group, info->num_groups, info->midi_ci_version, info->sysex8_streams, info->flags); + + if ((info->flags & SNDRV_UMP_BLOCK_IS_MIDI1) && info->num_groups != 1) { + info->num_groups = 1; + ump_dbg(ump, "FB %d: corrected groups to 1 for MIDI1\n", + info->block_id); + } } /* check whether the FB info gets updated by the current message */