mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 21:21:41 +00:00
ALSA: ump: Don't enumeration invalid groups for legacy rawmidi
The legacy rawmidi tries to enumerate all possible UMP groups belonging to the UMP endpoint. But currently it shows all 16 ports when the UMP endpoint is configured with static blocks, although most of them may be unused. There was already a fix for the sequencer client side to ignore such groups in the commit3bfd7c0ba1
("ALSA: seq: ump: Skip useless ports for static blocks"), and this commit is a similar fix for UMP rawmidi devices; it adds simply the check for the validity of each group that has been already parsed. (Note that the group info was moved to snd_ump_endpoint.groups[] by the commit0642a3c5ca
("ALSA: ump: Update substream name from assigned FB names")). Link: https://patch.msgid.link/20241104100735.16127-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
c9363bbb0f
commit
c2d188e137
@ -1233,7 +1233,7 @@ static int fill_legacy_mapping(struct snd_ump_endpoint *ump)
|
||||
|
||||
num = 0;
|
||||
for (i = 0; i < SNDRV_UMP_MAX_GROUPS; i++)
|
||||
if (group_maps & (1U << i))
|
||||
if ((group_maps & (1U << i)) && ump->groups[i].valid)
|
||||
ump->legacy_mapping[num++] = i;
|
||||
|
||||
return num;
|
||||
|
Loading…
Reference in New Issue
Block a user