From c85e62f7d2d0f1e281c0783400a67c81ee1f2f0a Mon Sep 17 00:00:00 2001
From: tiwai <>
Date: Feb 04 2024 18:55:37 +0000
Subject: Update alsa to version 1.2.11 / rev 225 via SR 1143687
https://build.opensuse.org/request/show/1143687
by user tiwai + anag+factory
---
diff --git a/.files b/.files
index 61e68d7..9741d89 100644
Binary files a/.files and b/.files differ
diff --git a/.rev b/.rev
index 8363194..d82ded0 100644
--- a/.rev
+++ b/.rev
@@ -1851,4 +1851,12 @@
1124035
+
+ ffa71b490a6dd49dc68ffc24c4e9574c
+ 1.2.11
+
+ anag+factory
+
+ 1143687
+
diff --git a/0001-control.h-Fix-ump-header-file-detection.patch b/0001-control.h-Fix-ump-header-file-detection.patch
deleted file mode 100644
index b1e2250..0000000
--- a/0001-control.h-Fix-ump-header-file-detection.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From fcce13a6726c52882bd8b7131c61c4eba308792c Mon Sep 17 00:00:00 2001
-From: Jaroslav Kysela
-Date: Mon, 4 Sep 2023 09:38:26 +0200
-Subject: [PATCH] control.h: Fix ump header file detection
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Apparently, the control.h is used from apps separately (outside
-asoundlib.h). Avoid errors like:
-
-/usr/include/alsa/control.h:417:47: error: ‘snd_ump_endpoint_info_t’ has not been declared
- 417 | int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info);
- | ^~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/alsa/control.h:418:44: error: ‘snd_ump_block_info_t’ has not been declared
- 418 | int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info);
- | ^~~~~~~~~~~~~~~~~~~~
-
-Fixes: https://github.com/alsa-project/alsa-lib/issues/348
-Signed-off-by: Jaroslav Kysela
----
- include/control.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/include/control.h b/include/control.h
-index ab482ba448c0..e7541d56d636 100644
---- a/include/control.h
-+++ b/include/control.h
-@@ -413,6 +413,8 @@ int snd_ctl_pcm_prefer_subdevice(snd_ctl_t *ctl, int subdev);
- int snd_ctl_rawmidi_next_device(snd_ctl_t *ctl, int * device);
- int snd_ctl_rawmidi_info(snd_ctl_t *ctl, snd_rawmidi_info_t * info);
- int snd_ctl_rawmidi_prefer_subdevice(snd_ctl_t *ctl, int subdev);
-+#endif
-+#ifdef __ALSA_UMP_H
- int snd_ctl_ump_next_device(snd_ctl_t *ctl, int *device);
- int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info);
- int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info);
---
-2.35.3
-
diff --git a/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch b/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
deleted file mode 100644
index 70352a4..0000000
--- a/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 10bd599970acc71c92f85eb08943eb8d3d702a9c Mon Sep 17 00:00:00 2001
-From: Jaroslav Kysela
-Date: Wed, 6 Sep 2023 15:16:44 +0200
-Subject: [PATCH] global.h: move __STRING() macro outside !PIC ifdef block
-
-It solves the musl libc compilation issue.
-
-control.c: In function 'snd_ctl_open_conf':
-../../include/global.h:98:36: warning: implicit declaration of function '__STRING' [-Wimplicit-function-declaratio]
- 98 | #define SND_DLSYM_VERSION(version) __STRING(version)
- | ^~~~~~~~
-
-Fixes: https://github.com/alsa-project/alsa-lib/issues/350
-Signed-off-by: Jaroslav Kysela
----
- include/global.h | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/include/global.h b/include/global.h
-index dfe9bc2b54bf..3ecaeee898c5 100644
---- a/include/global.h
-+++ b/include/global.h
-@@ -51,6 +51,11 @@ const char *snd_asoundlib_version(void);
- #define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
- #endif
-
-+#ifndef __STRING
-+/** \brief Return 'x' argument as string */
-+#define __STRING(x) #x
-+#endif
-+
- #ifdef PIC /* dynamic build */
-
- /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */
-@@ -71,11 +76,6 @@ struct snd_dlsym_link {
-
- extern struct snd_dlsym_link *snd_dlsym_start;
-
--#ifndef __STRING
--/** \brief Return 'x' argument as string */
--#define __STRING(x) #x
--#endif
--
- /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */
- #define __SND_DLSYM_VERSION(prefix, name, version) _ ## prefix ## name ## version
- /**
---
-2.35.3
-
diff --git a/0003-pcm-Fix-segfault-with-32bit-libs.patch b/0003-pcm-Fix-segfault-with-32bit-libs.patch
deleted file mode 100644
index 26cb61b..0000000
--- a/0003-pcm-Fix-segfault-with-32bit-libs.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-From 0e3dfb9f705ca78be34cd70fd59d67c431e29cc7 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Sat, 9 Sep 2023 17:42:03 +0200
-Subject: [PATCH] pcm: Fix segfault with 32bit libs
-
-The recent rearrangement of header inclusion order caused a regression
-showing segfaults on 32bit Arm. The primary reason is the
-inconsistent compile condition depending on the inclusion of config.h;
-while most of other code include pcm_local.h (that implicitly includes
-config.h) at first, pcm_direct.c doesn't do it, hence the access with
-direct plugins crashes.
-
-For fixing it, we need to include config.h at the beginning. But,
-it's better to include pcm_local.h for all relevant code for
-consistency. The patch does it, and also it adds the guard in
-pcm_local.h for double inclusions.
-
-Fixes: ad3a8b8b314e ("reshuffle included files to include config.h as first")
-Link: https://github.com/alsa-project/alsa-lib/issues/352
-Signed-off-by: Takashi Iwai
----
- src/pcm/pcm_direct.c | 1 +
- src/pcm/pcm_dmix.c | 2 +-
- src/pcm/pcm_dshare.c | 1 +
- src/pcm/pcm_dsnoop.c | 1 +
- src/pcm/pcm_local.h | 5 +++++
- src/pcm/pcm_shm.c | 1 +
- 6 files changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/src/pcm/pcm_direct.c b/src/pcm/pcm_direct.c
-index 040fc1605388..e53e59238119 100644
---- a/src/pcm/pcm_direct.c
-+++ b/src/pcm/pcm_direct.c
-@@ -19,6 +19,7 @@
- *
- */
-
-+#include "pcm_local.h"
- #include
- #include
- #include
-diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c
-index 7cd3c50841ae..55cae3e79a06 100644
---- a/src/pcm/pcm_dmix.c
-+++ b/src/pcm/pcm_dmix.c
-@@ -26,7 +26,7 @@
- *
- */
-
--#include "config.h"
-+#include "pcm_local.h"
- #include
- #include
- #include
-diff --git a/src/pcm/pcm_dshare.c b/src/pcm/pcm_dshare.c
-index 454b39a91429..c03290985457 100644
---- a/src/pcm/pcm_dshare.c
-+++ b/src/pcm/pcm_dshare.c
-@@ -26,6 +26,7 @@
- *
- */
-
-+#include "pcm_local.h"
- #include
- #include
- #include
-diff --git a/src/pcm/pcm_dsnoop.c b/src/pcm/pcm_dsnoop.c
-index d3ce300ce3b8..bf67c68a0dfa 100644
---- a/src/pcm/pcm_dsnoop.c
-+++ b/src/pcm/pcm_dsnoop.c
-@@ -26,6 +26,7 @@
- *
- */
-
-+#include "pcm_local.h"
- #include
- #include
- #include
-diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h
-index 6a0e71e711ea..152c92c300e1 100644
---- a/src/pcm/pcm_local.h
-+++ b/src/pcm/pcm_local.h
-@@ -20,6 +20,9 @@
- *
- */
-
-+#ifndef __PCM_LOCAL_H
-+#define __PCM_LOCAL_H
-+
- #include "config.h"
-
- #include
-@@ -1223,3 +1226,5 @@ static inline void snd_pcm_unlock(snd_pcm_t *pcm)
- #define snd_pcm_lock(pcm) do {} while (0)
- #define snd_pcm_unlock(pcm) do {} while (0)
- #endif /* THREAD_SAFE_API */
-+
-+#endif /* __PCM_LOCAL_H */
-diff --git a/src/pcm/pcm_shm.c b/src/pcm/pcm_shm.c
-index f0bfd934d335..d9596547741c 100644
---- a/src/pcm/pcm_shm.c
-+++ b/src/pcm/pcm_shm.c
-@@ -26,6 +26,7 @@
- *
- */
-
-+#include "pcm_local.h"
- #include
- #include
- #include
---
-2.35.3
-
diff --git a/0004-reshuffle-included-files-to-include-config.h-as-firs.patch b/0004-reshuffle-included-files-to-include-config.h-as-firs.patch
deleted file mode 100644
index 08d159f..0000000
--- a/0004-reshuffle-included-files-to-include-config.h-as-firs.patch
+++ /dev/null
@@ -1,210 +0,0 @@
-From 81a7a93636d9472fcb0c2ff32d9bfdf6ed10763d Mon Sep 17 00:00:00 2001
-From: Jaroslav Kysela
-Date: Wed, 13 Sep 2023 12:27:21 +0200
-Subject: [PATCH] reshuffle included files to include config.h as first - v2
-
-config.h may contain defines like _FILE_OFFSET_BITS which influence
-the system wide include files (off_t types, open -> open64 function
-usage etc.).
-
-Fixes: ad3a8b8b ("reshuffle included files to include config.h as first")
-Related: https://github.com/alsa-project/alsa-lib/pull/333
-Signed-off-by: Jaroslav Kysela
----
- src/control/setup.c | 2 +-
- src/rawmidi/rawmidi.c | 2 +-
- src/rawmidi/rawmidi_local.h | 2 +-
- src/rawmidi/rawmidi_virt.c | 4 +---
- src/rawmidi/ump.c | 4 ----
- src/seq/seq.c | 2 +-
- src/seq/seq_hw.c | 2 +-
- src/seq/seq_local.h | 2 +-
- src/seq/seq_midi_event.c | 2 +-
- src/seq/seqmid.c | 4 +---
- src/userfile.c | 2 +-
- 11 files changed, 10 insertions(+), 18 deletions(-)
-
-diff --git a/src/control/setup.c b/src/control/setup.c
-index 88635e42e446..fb09611764cf 100644
---- a/src/control/setup.c
-+++ b/src/control/setup.c
-@@ -29,13 +29,13 @@
- *
- */
-
-+#include "local.h"
- #include
- #include
- #include
- #include
- #include
- #include
--#include "local.h"
-
- #ifndef DOC_HIDDEN
- typedef struct {
-diff --git a/src/rawmidi/rawmidi.c b/src/rawmidi/rawmidi.c
-index 316f524b85ad..c4b45fa227f1 100644
---- a/src/rawmidi/rawmidi.c
-+++ b/src/rawmidi/rawmidi.c
-@@ -144,12 +144,12 @@ This example shows open and read/write rawmidi operations.
- * Shows open and read/write rawmidi operations.
- */
-
-+#include "rawmidi_local.h"
- #include
- #include
- #include
- #include
- #include
--#include "rawmidi_local.h"
-
- /**
- * \brief setup the default parameters
-diff --git a/src/rawmidi/rawmidi_local.h b/src/rawmidi/rawmidi_local.h
-index 19dbf72584fa..f0bb06a7d824 100644
---- a/src/rawmidi/rawmidi_local.h
-+++ b/src/rawmidi/rawmidi_local.h
-@@ -19,10 +19,10 @@
- *
- */
-
-+#include "local.h"
- #include
- #include
- #include
--#include "local.h"
-
- typedef struct {
- int (*close)(snd_rawmidi_t *rawmidi);
-diff --git a/src/rawmidi/rawmidi_virt.c b/src/rawmidi/rawmidi_virt.c
-index 884b8ff8deee..04c485d3eabf 100644
---- a/src/rawmidi/rawmidi_virt.c
-+++ b/src/rawmidi/rawmidi_virt.c
-@@ -19,13 +19,11 @@
- *
- */
-
--#include
--#include
-+#include "rawmidi_local.h"
- #include
- #include
- #include
- #include
--#include "rawmidi_local.h"
- #include "seq.h"
- #include "seq_midi_event.h"
-
-diff --git a/src/rawmidi/ump.c b/src/rawmidi/ump.c
-index 25fbaff23c9d..39c1c4a91928 100644
---- a/src/rawmidi/ump.c
-+++ b/src/rawmidi/ump.c
-@@ -4,10 +4,6 @@
- * \brief Universal MIDI Protocol (UMP) Interface
- */
-
--#include
--#include
--#include
--#include "local.h"
- #include "rawmidi_local.h"
- #include "ump_local.h"
-
-diff --git a/src/seq/seq.c b/src/seq/seq.c
-index 899dfe9f96ba..fd8ca30e2472 100644
---- a/src/seq/seq.c
-+++ b/src/seq/seq.c
-@@ -777,8 +777,8 @@ void event_filter(snd_seq_t *seq, snd_seq_event_t *ev)
-
- */
-
--#include
- #include "seq_local.h"
-+#include
-
- /****************************************************************************
- * *
-diff --git a/src/seq/seq_hw.c b/src/seq/seq_hw.c
-index a51ebfb68ebd..b74948c81c9e 100644
---- a/src/seq/seq_hw.c
-+++ b/src/seq/seq_hw.c
-@@ -20,9 +20,9 @@
- *
- */
-
-+#include "seq_local.h"
- #include
- #include
--#include "seq_local.h"
-
- #ifndef PIC
- /* entry for static linking */
-diff --git a/src/seq/seq_local.h b/src/seq/seq_local.h
-index 9b4a65459d3d..468248062638 100644
---- a/src/seq/seq_local.h
-+++ b/src/seq/seq_local.h
-@@ -23,10 +23,10 @@
- #ifndef __SEQ_LOCAL_H
- #define __SEQ_LOCAL_H
-
-+#include "local.h"
- #include
- #include
- #include
--#include "local.h"
-
- #define SND_SEQ_OBUF_SIZE (16*1024) /* default size */
- #define SND_SEQ_IBUF_SIZE 500 /* in event_size aligned */
-diff --git a/src/seq/seq_midi_event.c b/src/seq/seq_midi_event.c
-index df09bde30eea..95a44e9bc323 100644
---- a/src/seq/seq_midi_event.c
-+++ b/src/seq/seq_midi_event.c
-@@ -28,10 +28,10 @@
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-+#include "local.h"
- #if HAVE_MALLOC_H
- #include
- #endif
--#include "local.h"
-
- #ifndef DOC_HIDDEN
-
-diff --git a/src/seq/seqmid.c b/src/seq/seqmid.c
-index 55651f3896f3..9ec93ee8ade1 100644
---- a/src/seq/seqmid.c
-+++ b/src/seq/seqmid.c
-@@ -20,14 +20,12 @@
- *
- */
-
--#include
--#include
-+#include "seq_local.h"
- #include
- #include
- #include
- #include
- #include
--#include "seq_local.h"
-
- /**
- * \brief queue controls - start/stop/continue
-diff --git a/src/userfile.c b/src/userfile.c
-index 4a740834313c..492ea9cbc238 100644
---- a/src/userfile.c
-+++ b/src/userfile.c
-@@ -18,7 +18,7 @@
- *
- */
-
--#include
-+#include "config.h"
- #include
- #include
- #include
---
-2.35.3
-
diff --git a/0005-seq-Fix-typos-in-symbol-version-definitions.patch b/0005-seq-Fix-typos-in-symbol-version-definitions.patch
deleted file mode 100644
index 634fdd6..0000000
--- a/0005-seq-Fix-typos-in-symbol-version-definitions.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 96f60d829f2c9dc9ad9eda46410adaa41b4b0da0 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Tue, 10 Oct 2023 08:20:15 +0200
-Subject: [PATCH] seq: Fix typos in symbol version definitions
-
-There were obvious typos in src/Versions.in that resulted in the
-undefined symbols. Correct those entries.
-
-Fixes: 2aefb5c41cc0 ("seq: Add UMP support")
-Closes: https://github.com/alsa-project/alsa-lib/issues/356
-Signed-off-by: Takashi Iwai
----
- src/Versions.in | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/Versions.in b/src/Versions.in
-index c8ac1c8277a3..c53a99fa7ab0 100644
---- a/src/Versions.in
-+++ b/src/Versions.in
-@@ -158,13 +158,13 @@ ALSA_1.2.10 {
- @SYMBOL_PREFIX@snd_ctl_ump_block_info;
- @SYMBOL_PREFIX@snd_seq_ump_*;
- @SYMBOL_PREFIX@snd_seq_client_info_get_midi_version;
-- @SYMBOL_PREFIX@snd_seq_seq_client_info_get_ump_group_enabled;
-+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_group_enabled;
- @SYMBOL_PREFIX@snd_seq_client_info_get_ump_groupless_enabled;
-- @SYMBOL_PREFIX@snd_seq_seq_client_get_ump_conversion;
-+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_conversion;
- @SYMBOL_PREFIX@snd_seq_client_info_set_midi_version;
-- @SYMBOL_PREFIX@snd_seq_seq_client_info_set_ump_group_enabled;
-+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_group_enabled;
- @SYMBOL_PREFIX@snd_seq_client_info_set_ump_groupless_enabled;
-- @SYMBOL_PREFIX@snd_seq_seq_client_set_ump_conversion;
-+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_conversion;
- @SYMBOL_PREFIX@snd_seq_get_ump_endpoint_info;
- @SYMBOL_PREFIX@snd_seq_get_ump_block_info;
- @SYMBOL_PREFIX@snd_seq_set_ump_endpoint_info;
---
-2.35.3
-
diff --git a/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch b/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
deleted file mode 100644
index fba3ec6..0000000
--- a/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 915a71a2cdf6361f0fc77fa367a67910dc0288db Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Sat, 4 Nov 2023 10:05:39 +0100
-Subject: [PATCH] seq: Fix invalid sanity-check in
- snd_seq_set_input_buffer_size()
-
-snd_seq_set_input_buffer_size() has an assert() call with packet_size,
-but it's still uninitialized at that point. Fix it with the real
-packet size.
-
-Fixes: 2aefb5c41cc0 ("seq: Add UMP support")
-Signed-off-by: Takashi Iwai
----
- src/seq/seq.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/seq/seq.c b/src/seq/seq.c
-index fd8ca30e2472..5ec737a7004f 100644
---- a/src/seq/seq.c
-+++ b/src/seq/seq.c
-@@ -1269,9 +1269,9 @@ int snd_seq_set_input_buffer_size(snd_seq_t *seq, size_t size)
- size_t packet_size;
-
- assert(seq && seq->ibuf);
-+ packet_size = get_packet_size(seq);
- assert(size >= packet_size);
- snd_seq_drop_input(seq);
-- packet_size = get_packet_size(seq);
- size = (size + packet_size - 1) / packet_size;
- if (size != seq->ibufsize) {
- char *newbuf;
---
-2.35.3
-
diff --git a/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch b/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
deleted file mode 100644
index cf38bb2..0000000
--- a/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From f202ec3c23abf16a2382acc0de35900173e32160 Mon Sep 17 00:00:00 2001
-From: Hector Martin
-Date: Sat, 28 Oct 2023 21:33:29 +0900
-Subject: [PATCH] mixer: simple: Support dB TLVs for CTL_SINGLE controls
-
-dB mappings do not work for controls not named "* Volume", since we do not
-fall back to CTL_SINGLE in get_selem_ctl. Add that branch to make it
-work.
-
-Fixes dB ranges for e.g. controls named "* Gain".
-
-Closes: https://github.com/alsa-project/alsa-lib/pull/358
-Signed-off-by: Hector Martin
-Signed-off-by: Jaroslav Kysela
----
- src/mixer/simple_none.c | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/src/mixer/simple_none.c b/src/mixer/simple_none.c
-index 846b0ca92467..dd03fcf13d01 100644
---- a/src/mixer/simple_none.c
-+++ b/src/mixer/simple_none.c
-@@ -1155,11 +1155,12 @@ static selem_ctl_t *get_selem_ctl(selem_none_t *s, int dir)
- c = &s->ctls[CTL_CAPTURE_VOLUME];
- else
- return NULL;
-- if (! c->elem) {
-+ if (! c->elem)
- c = &s->ctls[CTL_GLOBAL_VOLUME];
-- if (! c->elem)
-- return NULL;
-- }
-+ if (! c->elem)
-+ c = &s->ctls[CTL_SINGLE];
-+ if (! c->elem)
-+ return NULL;
- if (c->type != SND_CTL_ELEM_TYPE_INTEGER)
- return NULL;
- return c;
---
-2.35.3
-
diff --git a/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch b/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
deleted file mode 100644
index 9290a5c..0000000
--- a/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 2fca03e792ef1b740e8a7370fdd360d0b627c84c Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Mon, 6 Nov 2023 16:27:11 +0100
-Subject: [PATCH] seq: Clear UMP event flag for legacy apps
-
-It seems that some applications (at least Chrome WebMIDI) set random
-bits to the flags of event packet, and this confuses as if they were
-UMP-events, which are eventually filtered out.
-
-Although it's a bug of applications, it's better to avoid the
-regressions. So this patch forcibly clears the UMP flag of the
-incoming and outgoing events when the application is running in the
-legacy mode (i.e. midi_version = 0).
-
-Fixes: 2aefb5c41cc0 ("seq: Add UMP support")
-Closes: https://github.com/alsa-project/alsa-lib/issues/360
-Signed-off-by: Takashi Iwai
----
- src/seq/seq.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/src/seq/seq.c b/src/seq/seq.c
-index 5ec737a7004f..643cf159f3ef 100644
---- a/src/seq/seq.c
-+++ b/src/seq/seq.c
-@@ -4161,6 +4161,13 @@ int snd_seq_event_output(snd_seq_t *seq, snd_seq_event_t *ev)
- return result;
- }
-
-+/* workaround for broken legacy apps that set UMP event bit unexpectedly */
-+static void clear_ump_for_legacy_apps(snd_seq_t *seq, snd_seq_event_t *ev)
-+{
-+ if (!seq->midi_version && snd_seq_ev_is_ump(ev))
-+ ev->flags &= ~SNDRV_SEQ_EVENT_UMP;
-+}
-+
- /**
- * \brief output an event onto the lib buffer without draining buffer
- * \param seq sequencer handle
-@@ -4178,6 +4185,7 @@ int snd_seq_event_output_buffer(snd_seq_t *seq, snd_seq_event_t *ev)
- {
- int len;
- assert(seq && ev);
-+ clear_ump_for_legacy_apps(seq, ev);
- len = snd_seq_event_length(ev);
- if (len < 0)
- return -EINVAL;
-@@ -4238,6 +4246,7 @@ int snd_seq_event_output_direct(snd_seq_t *seq, snd_seq_event_t *ev)
- ssize_t len;
- void *buf;
-
-+ clear_ump_for_legacy_apps(seq, ev);
- len = snd_seq_event_length(ev);
- if (len < 0)
- return len;
-@@ -4374,6 +4383,7 @@ static int snd_seq_event_retrieve_buffer(snd_seq_t *seq, snd_seq_event_t **retp)
- snd_seq_event_t *ev;
-
- *retp = ev = (snd_seq_event_t *)(seq->ibuf + seq->ibufptr * packet_size);
-+ clear_ump_for_legacy_apps(seq, ev);
- seq->ibufptr++;
- seq->ibuflen--;
- if (! snd_seq_ev_is_variable(ev))
---
-2.35.3
-
diff --git a/0009-seq-Simplify-snd_seq_extract_output.patch b/0009-seq-Simplify-snd_seq_extract_output.patch
deleted file mode 100644
index f637d52..0000000
--- a/0009-seq-Simplify-snd_seq_extract_output.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 94a5ddff9d5d85104755ee17b301c289a060cebf Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Mon, 6 Nov 2023 16:33:59 +0100
-Subject: [PATCH] seq: Simplify snd_seq_extract_output()
-
-Now that we never put UMP events on the output buffer in the legacy
-mode, the check and skip of UMP events are no longer necessary.
-It means that ump_allowed argument is meaningless in extract_output(),
-too.
-
-Let's drop the unnecessary check and move the code extract_output()
-into snd_seq_extract_output() again, and call this directly from
-snd_seq_ump_extract_output() for simplification.
-
-Signed-off-by: Takashi Iwai
----
- src/seq/seq.c | 52 ++++++++++++++++++++-------------------------------
- 1 file changed, 20 insertions(+), 32 deletions(-)
-
-diff --git a/src/seq/seq.c b/src/seq/seq.c
-index 643cf159f3ef..5eac4848b9c7 100644
---- a/src/seq/seq.c
-+++ b/src/seq/seq.c
-@@ -4308,36 +4308,6 @@ int snd_seq_drain_output(snd_seq_t *seq)
- return 0;
- }
-
--static int extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res, int ump_allowed)
--{
-- size_t len, olen;
-- assert(seq);
-- if (ev_res)
-- *ev_res = NULL;
-- repeat:
-- if ((olen = seq->obufused) < sizeof(snd_seq_event_t))
-- return -ENOENT;
-- len = snd_seq_event_length((snd_seq_event_t *)seq->obuf);
-- if (olen < len)
-- return -ENOENT;
-- /* skip invalid UMP events */
-- if (snd_seq_ev_is_ump((snd_seq_event_t *)seq->obuf) && !ump_allowed) {
-- seq->obufused -= len;
-- memmove(seq->obuf, seq->obuf + len, seq->obufused);
-- goto repeat;
-- }
-- if (ev_res) {
-- /* extract the event */
-- if (alloc_tmpbuf(seq, len) < 0)
-- return -ENOMEM;
-- memcpy(seq->tmpbuf, seq->obuf, len);
-- *ev_res = (snd_seq_event_t *)seq->tmpbuf;
-- }
-- seq->obufused = olen - len;
-- memmove(seq->obuf, seq->obuf + len, seq->obufused);
-- return 0;
--}
--
- /**
- * \brief extract the first event in output buffer
- * \param seq sequencer handle
-@@ -4351,7 +4321,25 @@ static int extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res, int ump_allo
- */
- int snd_seq_extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res)
- {
-- return extract_output(seq, ev_res, 0);
-+ size_t len, olen;
-+ assert(seq);
-+ if (ev_res)
-+ *ev_res = NULL;
-+ if ((olen = seq->obufused) < sizeof(snd_seq_event_t))
-+ return -ENOENT;
-+ len = snd_seq_event_length((snd_seq_event_t *)seq->obuf);
-+ if (olen < len)
-+ return -ENOENT;
-+ if (ev_res) {
-+ /* extract the event */
-+ if (alloc_tmpbuf(seq, len) < 0)
-+ return -ENOMEM;
-+ memcpy(seq->tmpbuf, seq->obuf, len);
-+ *ev_res = (snd_seq_event_t *)seq->tmpbuf;
-+ }
-+ seq->obufused = olen - len;
-+ memmove(seq->obuf, seq->obuf + len, seq->obufused);
-+ return 0;
- }
-
- /*----------------------------------------------------------------*/
-@@ -4547,7 +4535,7 @@ int snd_seq_ump_extract_output(snd_seq_t *seq, snd_seq_ump_event_t **ev_res)
- {
- if (!seq->midi_version)
- return -EBADFD;
-- return extract_output(seq, (snd_seq_event_t **)ev_res, 1);
-+ return snd_seq_extract_output(seq, (snd_seq_event_t **)ev_res);
- }
-
- /**
---
-2.35.3
-
diff --git a/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch b/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
deleted file mode 100644
index 32a9a02..0000000
--- a/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From ed6b07084bfea4155bbc98bcf38508ab81bdd008 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Mon, 6 Nov 2023 16:36:55 +0100
-Subject: [PATCH] seq: Check protocol compatibility with the current version
-
-There is no need for checking the protocol compatibility with another
-version, but we just need to check for the current version.
-
-Signed-off-by: Takashi Iwai
----
- src/seq/seq_hw.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/seq/seq_hw.c b/src/seq/seq_hw.c
-index b74948c81c9e..eeaf26e16d1c 100644
---- a/src/seq/seq_hw.c
-+++ b/src/seq/seq_hw.c
-@@ -32,7 +32,6 @@ const char *_snd_module_seq_hw = "";
- #ifndef DOC_HIDDEN
- #define SNDRV_FILE_SEQ ALSA_DEVICE_DIRECTORY "seq"
- #define SNDRV_FILE_ALOADSEQ ALOAD_DEVICE_DIRECTORY "aloadSEQ"
--#define SNDRV_SEQ_VERSION_MAX SNDRV_PROTOCOL_VERSION(1, 0, 2)
-
- typedef struct {
- int fd;
-@@ -535,7 +534,7 @@ int snd_seq_hw_open(snd_seq_t **handle, const char *name, int streams, int mode)
- close(fd);
- return ret;
- }
-- if (SNDRV_PROTOCOL_INCOMPATIBLE(ver, SNDRV_SEQ_VERSION_MAX)) {
-+ if (SNDRV_PROTOCOL_INCOMPATIBLE(ver, SNDRV_SEQ_VERSION)) {
- close(fd);
- return -SND_ERROR_INCOMPATIBLE_VERSION;
- }
---
-2.35.3
-
diff --git a/alsa-lib-1.2.10.tar.bz2 b/alsa-lib-1.2.10.tar.bz2
deleted file mode 120000
index f8136c5..0000000
--- a/alsa-lib-1.2.10.tar.bz2
+++ /dev/null
@@ -1 +0,0 @@
-/ipfs/bafybeihgnbqesmnhd3g5sjjy6vujabl4camldmycy7nmlh25v4lazkwo4q
\ No newline at end of file
diff --git a/alsa-lib-1.2.10.tar.bz2.sig b/alsa-lib-1.2.10.tar.bz2.sig
deleted file mode 100644
index 827e36e..0000000
--- a/alsa-lib-1.2.10.tar.bz2.sig
+++ /dev/null
@@ -1,16 +0,0 @@
------BEGIN PGP SIGNATURE-----
-
-iQIzBAABCAAdFiEE8E31BzesGohMSz1xg4BZbablnJEFAmTyDKoACgkQg4BZbabl
-nJHkUQ/9FBYbT0I6HvjfJmkYBfpRDRbSxPimqho6CYdHPS4gEBksGha1obBoFEnn
-HAmv8pFWn4tYOPGJ6RD+mGHBntc9W7Mzg6J7NTcoaGK3u4szPwZ4iPhn5QSMOGzH
-wRFJFb1jt1Ryj8eKJQSELsy2VMJzSj3cObu8nILJlKAeV9AJfAFyXRQPUjJZOkDr
-27oItHV2vtEaIndHTNHYOnkDrPPp0DplM+gfUhLP0ghu0hknQI7PuOJzN9AWqkVD
-UiMsVGdXvPTmJd0+nzzUSY5lmStWcp7kujH5er/0YpB1/SWS9GgN4YN5q5nUFgVA
-b5xBb3/8xW0EZ9j53X+PgCE57iMe5/5UCto70ITO4o44k0rev/9ixdzBc5J5dyls
-cRLtXJwnxNS82pG429uOkEBAe309JCMKpDlOksKbPpqbtvcRN3yXlE92GEuUIrHT
-VCPzNQd5XXYXX4E06/ScbpYvFqEyoT+Ph6cyunwoL9ocioj+tsB4fHi1exbwoy6+
-/rx/70NjtFEVCdRpuflNmQZGyTtDd+sfaxsanH8MK7jdZCIXHyLBKqSRIrSoc8v/
-sU7fzSPQ2zh1dnmjzm69l1z/YmPHf+gbGwC4Tb6Wq37o49APQYh2csz6z4E0pMP3
-WgSPuWyXfgsQg9vu1/D+DnQAQFHFK8q2JKmpf7QoXpFGMN3G2nI=
-=qe38
------END PGP SIGNATURE-----
diff --git a/alsa-lib-1.2.11.tar.bz2 b/alsa-lib-1.2.11.tar.bz2
new file mode 120000
index 0000000..536b655
--- /dev/null
+++ b/alsa-lib-1.2.11.tar.bz2
@@ -0,0 +1 @@
+/ipfs/bafybeidcjlpvcmu6zvhybcsitnyzdafllo46xwyl2oei2d7q4q2uzjmmai
\ No newline at end of file
diff --git a/alsa-lib-1.2.11.tar.bz2.sig b/alsa-lib-1.2.11.tar.bz2.sig
new file mode 100644
index 0000000..d18e4f0
--- /dev/null
+++ b/alsa-lib-1.2.11.tar.bz2.sig
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCAAdFiEE8E31BzesGohMSz1xg4BZbablnJEFAmW30XoACgkQg4BZbabl
+nJGspg//e2GZwtqdYFPlHPRENVRUH6koiyzptLEiNUwfj3KduL7H2gpaK95Az+yE
+zhpUjBK6mycxccE2JRyA7yCeTQFKp8LAXpHHH6gErLvAMCb+8g+bTgJDkCovI5El
+Up3tzlygrfJBBPXiFrNRMX1S0OQskgUlXC5Ki8+Y31JZvW6rp4DgqN7iAFl19Lcy
+BiDiguDCah3Nws8x1tRxAnOA5Qrjg/dZ0fPU1jRINk+FSUM129TPLWAC5QV/3IGL
+qhZRJ0VTqSRE+bippVtc0trzrOQQ9gQkPYyI/SW5S3+O9qAQBMYBaupUVy6bOvxj
+ySj3iyz/G7JvDUtDZL23z9bQ7ubHvTiy4WqHGX8OTDXzczw5upOdQi8zTNKeE18+
+m1Uj+FmXeBRgkDc3G99F9hgFcja1BdrisJhX+OarN9OPD7m8fZSZfH8y2IV2YRuz
+OXcIp5B5A7JUrmQiLgBhiGrZdN9bKRee+O5o1LBttsZcg/JBSZiC2NAlV2jQ2Xze
+ITvjz5uma+ROxIWKQTopByl/fXYf4xDk7pATS7uvLzY0tuOI+Gkgt3+hFOs5MMDK
+TXIC41ZnSaIRQdjs8FhTzNSViLHrCUOmP3GORpnE2oCR2PfUen9YJ+RcoU5ezRm0
+Wh1ZLNd+//bqCssVDswA9jU2vbJ9zsJPqeIuYOSdF/PKRw5CRqY=
+=3Cxi
+-----END PGP SIGNATURE-----
diff --git a/alsa.changes b/alsa.changes
index 099dc58..76d0d2a 100644
--- a/alsa.changes
+++ b/alsa.changes
@@ -1,4 +1,26 @@
-------------------------------------------------------------------
+Fri Feb 2 14:49:30 UTC 2024 - Takashi Iwai
+
+- Updated to alsa-lib 1.2.11:
+ * auto-tools fixes, versioned symbol fixes
+ * support dB TLVs for single controls
+ * various PCM updates, including subformat extensions
+ * UMP and sequencer API fixes
+ For details, see:
+ https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
+- Dropped obsoleted patches:
+ 0001-control.h-Fix-ump-header-file-detection.patch
+ 0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
+ 0003-pcm-Fix-segfault-with-32bit-libs.patch
+ 0004-reshuffle-included-files-to-include-config.h-as-firs.patch
+ 0005-seq-Fix-typos-in-symbol-version-definitions.patch
+ 0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
+ 0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
+ 0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
+ 0009-seq-Simplify-snd_seq_extract_output.patch
+ 0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
+
+-------------------------------------------------------------------
Tue Nov 7 14:51:05 UTC 2023 - Takashi Iwai
- Backport upstream fixes for sequencer and mixer:
diff --git a/alsa.spec b/alsa.spec
index b487d04..da74786 100644
--- a/alsa.spec
+++ b/alsa.spec
@@ -1,7 +1,7 @@
#
# spec file for package alsa
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -32,7 +32,7 @@
%endif
Name: alsa
-Version: 1.2.10
+Version: 1.2.11
Release: 0
Summary: Advanced Linux Sound Architecture
License: LGPL-2.1-or-later
@@ -56,16 +56,6 @@ Source34: alsa-init.sh
# from https://www.alsa-project.org/files/pub/gpg-release-key-v1.txt
Source35: alsa.keyring
# upstream fixes
-Patch1: 0001-control.h-Fix-ump-header-file-detection.patch
-Patch2: 0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
-Patch3: 0003-pcm-Fix-segfault-with-32bit-libs.patch
-Patch4: 0004-reshuffle-included-files-to-include-config.h-as-firs.patch
-Patch5: 0005-seq-Fix-typos-in-symbol-version-definitions.patch
-Patch6: 0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
-Patch7: 0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
-Patch8: 0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
-Patch9: 0009-seq-Simplify-snd_seq_extract_output.patch
-Patch10: 0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
# rest suse fixes
Patch101: alsa-lib-ignore-non-accessible-ALSA_CONFIG_PATH.patch
BuildRequires: doxygen