ALSA: ump: Force 1 Group for MIDI1 FBs
commitac29d8ae05upstream. 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:37e0e14128("ALSA: ump: Support UMP Endpoint and Function Block parsing") Cc: <stable@vger.kernel.org> Link: https://patch.msgid.link/20240722140610.10845-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
ad4ab148a5
commit
689e0780b2
@@ -733,6 +733,12 @@ static void fill_fb_info(struct snd_ump_endpoint *ump,
|
|||||||
info->block_id, info->direction, info->active,
|
info->block_id, info->direction, info->active,
|
||||||
info->first_group, info->num_groups, info->midi_ci_version,
|
info->first_group, info->num_groups, info->midi_ci_version,
|
||||||
info->sysex8_streams, info->flags);
|
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 */
|
/* check whether the FB info gets updated by the current message */
|
||||||
|
|||||||
Reference in New Issue
Block a user