diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-08-07 13:14:31 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-08-07 13:14:31 +0000 |
commit | e97aca3557601e6e343dcf391aa876321f48ac39 (patch) | |
tree | e7db4542359bc8b48518df7fe28fd09c7543eea1 /sound/core/ump.c | |
parent | Releasing progress-linux version 6.9.8-1~progress7.99u1. (diff) | |
download | linux-e97aca3557601e6e343dcf391aa876321f48ac39.tar.xz linux-e97aca3557601e6e343dcf391aa876321f48ac39.zip |
Merging upstream version 6.9.9.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sound/core/ump.c')
-rw-r--r-- | sound/core/ump.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/core/ump.c b/sound/core/ump.c index 117c7ecc48..3f61220c23 100644 --- a/sound/core/ump.c +++ b/sound/core/ump.c @@ -967,6 +967,14 @@ int snd_ump_parse_endpoint(struct snd_ump_endpoint *ump) if (err < 0) ump_dbg(ump, "Unable to get UMP EP stream config\n"); + /* If no protocol is set by some reason, assume the valid one */ + if (!(ump->info.protocol & SNDRV_UMP_EP_INFO_PROTO_MIDI_MASK)) { + if (ump->info.protocol_caps & SNDRV_UMP_EP_INFO_PROTO_MIDI2) + ump->info.protocol |= SNDRV_UMP_EP_INFO_PROTO_MIDI2; + else if (ump->info.protocol_caps & SNDRV_UMP_EP_INFO_PROTO_MIDI1) + ump->info.protocol |= SNDRV_UMP_EP_INFO_PROTO_MIDI1; + } + /* Query and create blocks from Function Blocks */ for (blk = 0; blk < ump->info.num_blocks; blk++) { err = create_block_from_fb_info(ump, blk); |