updated alsa-lib to 1.2.6.1 and alsa-ucm-conf to 1.2.6.2

This commit is contained in:
Jaroslav Kysela 2021-12-10 10:11:53 +01:00
parent e25e817147
commit 90dfeee307
4 changed files with 9 additions and 356 deletions

View File

@ -1,97 +0,0 @@
From f44c94f24c2422c5ee1c4c58253ec17412b248a9 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Tue, 7 Dec 2021 09:21:24 +0100
Subject: [PATCH 1/2] conf: accept '_' character in the variable name
Fixes: https://github.com/alsa-project/alsa-lib/issues/197
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
src/confeval.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/confeval.c b/src/confeval.c
index a971bf38..be9ac874 100644
--- a/src/confeval.c
+++ b/src/confeval.c
@@ -190,7 +190,7 @@ int _snd_eval_string(snd_config_t **dst, const char *s,
} else {
e = s + 1;
while (*e) {
- if (!isalnum(*e))
+ if (!isalnum(*e) && *e != '_')
break;
e++;
}
--
2.31.1
From 4b22871ee5a3bbc8eef7039bfc8db5e65ff3895f Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Thu, 9 Dec 2021 10:15:29 +0100
Subject: [PATCH 2/2] conf: fix the device parsing when arguments has no
defaults
The commit bf528b90 sets the value to an empty string which causes
these errors:
pcm_hw.c: Invalid type for device
pcm_hw.c: Invalid type for subdevice
When device arguments (@args) have no default values set,
the field must be skipped to keep the compatibility.
BugLink: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1246
Fixes: https://github.com/alsa-project/alsa-lib/issues/199
Fixes: bf528b90 ("conf: add possibility to evaluate simple integer math expressions")
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
src/conf.c | 8 ++++++--
src/confeval.c | 5 +++++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/conf.c b/src/conf.c
index 0f6d2ba8..d3597cbc 100644
--- a/src/conf.c
+++ b/src/conf.c
@@ -4994,8 +4994,10 @@ int snd_config_copy(snd_config_t **dst,
static int _snd_config_expand_vars(snd_config_t **dst, const char *s, void *private_data)
{
snd_config_t *val, *vars = private_data;
- if (snd_config_search(vars, s, &val) < 0)
- return snd_config_make_string(dst, "");
+ if (snd_config_search(vars, s, &val) < 0) {
+ *dst = NULL;
+ return 0;
+ }
return snd_config_copy(dst, val);
}
@@ -5060,6 +5062,8 @@ static int _snd_config_expand(snd_config_t *src,
err = snd_config_evaluate_string(dst, s, fcn, vars);
if (err < 0)
return err;
+ if (*dst == NULL)
+ return 0;
err = snd_config_set_id(*dst, id);
if (err < 0) {
snd_config_delete(*dst);
diff --git a/src/confeval.c b/src/confeval.c
index be9ac874..4a6f8c2e 100644
--- a/src/confeval.c
+++ b/src/confeval.c
@@ -203,6 +203,11 @@ int _snd_eval_string(snd_config_t **dst, const char *s,
free(m);
if (err < 0)
return err;
+ if (tmp == NULL) {
+ err = snd_config_imake_integer(&tmp, NULL, 0);
+ if (err < 0)
+ return err;
+ }
s = e;
}
err = _to_integer(op == LEFT ? &left : &right, tmp);
--
2.31.1

View File

@ -2,14 +2,14 @@
#define prever_dot .rc3
#define postver a
%define version_alsa_lib 1.2.6
%define version_alsa_ucm 1.2.6
%define version_alsa_lib 1.2.6.1
%define version_alsa_ucm 1.2.6.2
%define version_alsa_tplg 1.2.5
Summary: The Advanced Linux Sound Architecture (ALSA) library
Name: alsa-lib
Version: %{version_alsa_lib}
Release: 3%{?prever_dot}%{?dist}
Release: 1%{?prever_dot}%{?dist}
License: LGPLv2+
URL: http://www.alsa-project.org/
@ -167,6 +167,9 @@ rm %{buildroot}/%{_includedir}/asoundlib.h
%{_datadir}/alsa/topology
%changelog
* Fri Dec 10 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6.1-1
- updated alsa-lib to 1.2.6.1 and alsa-ucm-conf to 1.2.6.2
* Thu Dec 9 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-3
- device open fixes from upstream

View File

@ -1,254 +0,0 @@
From 244fc744e90c85f2816c5baba9fee08a85fec58e Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Thu, 9 Dec 2021 09:00:12 +0100
Subject: [PATCH 1/3] USB-Audio: fix the wrong condition type for
If.realtek-alc1220-vb
BugLink: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1246
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
ucm2/USB-Audio/USB-Audio.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
index 878d16d..d9d740e 100644
--- a/ucm2/USB-Audio/USB-Audio.conf
+++ b/ucm2/USB-Audio/USB-Audio.conf
@@ -15,7 +15,7 @@ If.linked {
If.realtek-alc1220-vb {
Condition {
- Type Regex
+ Type RegexMatch
String "${CardComponents}"
# 0414:a002 Gigabyte TRX40 Aorus Pro WiFi
# 0b05:1917 ASUS ROG Strix
--
2.31.1
From cefbdeb9f763ab4cbba1c338716d40acb6a4e43a Mon Sep 17 00:00:00 2001
From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Date: Wed, 10 Nov 2021 14:12:39 +0100
Subject: [PATCH 2/3] ucm2: Add support for SC7180 Trogdor Lazor Chromebooks
Almost all Trogdor Chromebooks are using RT5682 for headphones/headset
on 3.5mm jack, internal microphone and headset microphone, and MAX98357A
for the internal speakers (Lazor and Limozeen).
This adds support for the sc7180-rt5682-max98357a-1mic sound card found
on the aforementioned Chromebooks.
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
.../sc7180/rt5682-max98357a/HiFi.conf | 101 ++++++++++++++++++
.../sc7180/rt5682-max98357a/init.conf | 24 +++++
.../sc7180-rt5682-max98357a-1mic.conf | 11 ++
.../SC7180/sc7180-rt5682-max98357a-1mic.conf | 1 +
4 files changed, 137 insertions(+)
create mode 100644 ucm2/Qualcomm/sc7180/rt5682-max98357a/HiFi.conf
create mode 100644 ucm2/Qualcomm/sc7180/rt5682-max98357a/init.conf
create mode 100644 ucm2/Qualcomm/sc7180/rt5682-max98357a/sc7180-rt5682-max98357a-1mic.conf
create mode 120000 ucm2/conf.d/SC7180/sc7180-rt5682-max98357a-1mic.conf
diff --git a/ucm2/Qualcomm/sc7180/rt5682-max98357a/HiFi.conf b/ucm2/Qualcomm/sc7180/rt5682-max98357a/HiFi.conf
new file mode 100644
index 0000000..c93b4f7
--- /dev/null
+++ b/ucm2/Qualcomm/sc7180/rt5682-max98357a/HiFi.conf
@@ -0,0 +1,101 @@
+# Use case configuration for ALC5682+MAX98357A on SC7180
+
+SectionVerb {
+ Value {
+ TQ "HiFi"
+ }
+}
+
+SectionDevice."Speaker" {
+ Comment "Speaker"
+
+ Value {
+ PlaybackChannels 2
+ PlaybackPCM "hw:${CardId},1"
+ PlaybackPriority 100
+ PlaybackMixerElem "Speaker"
+ PlaybackVolume "Speaker Playback Volume"
+ }
+}
+
+SectionDevice."Headphones" {
+ Comment "Headphones"
+
+ EnableSequence [
+ cset "name='HPOL Playback Switch' 1"
+ cset "name='HPOR Playback Switch' 1"
+ cset "name='Stereo1 DAC MIXL DAC L1 Switch' 1"
+ cset "name='Stereo1 DAC MIXR DAC R1 Switch' 1"
+ ]
+
+ DisableSequence [
+ cset "name='HPOL Playback Switch' 0"
+ cset "name='HPOR Playback Switch' 0"
+ cset "name='Stereo1 DAC MIXL DAC L1 Switch' 0"
+ cset "name='Stereo1 DAC MIXR DAC R1 Switch' 0"
+ ]
+
+ Value {
+ PlaybackPCM "hw:${CardId},0"
+ PlaybackPriority 200
+ PlaybackMasterElem "DAC1"
+ PlaybackMixerElem "Headphone"
+ PlaybackVolume "Headphone Playback Volume"
+ }
+}
+
+SectionDevice."Mic" {
+ Comment "Internal Microphone"
+
+ ConflictingDevice [
+ "Headset"
+ ]
+
+ EnableSequence [
+ cset "name='IF1 01 ADC Swap Mux' 1"
+ cset "name='Stereo1 ADC L2 Mux' 1"
+ cset "name='Stereo1 ADC R2 Mux' 1"
+ cset "name='Stereo1 ADC MIXL ADC2 Switch' 1"
+ cset "name='Stereo1 ADC MIXR ADC2 Switch' 1"
+ ]
+
+ DisableSequence [
+ cset "name='Stereo1 ADC L2 Mux' 0"
+ cset "name='Stereo1 ADC R2 Mux' 0"
+ cset "name='Stereo1 ADC MIXL ADC2 Switch' 0"
+ cset "name='Stereo1 ADC MIXR ADC2 Switch' 0"
+ ]
+
+ Value {
+ CapturePCM "hw:${CardId},0"
+ CapturePriority 100
+ CaptureMixerElem "STO1 ADC"
+ CaptureVolume "STO1 ADC Capture Volume"
+ }
+}
+
+SectionDevice."Headset" {
+ Comment "Headset Microphone"
+
+ EnableSequence [
+ cset "name='IF1 01 ADC Swap Mux' 2"
+ cset "name='Stereo1 ADC L1 Mux' 1"
+ cset "name='Stereo1 ADC R1 Mux' 1"
+ cset "name='Stereo1 ADC MIXL ADC1 Switch' 1"
+ cset "name='Stereo1 ADC MIXR ADC1 Switch' 1"
+ ]
+
+ DisableSequence [
+ cset "name='Stereo1 ADC L1 Mux' 0"
+ cset "name='Stereo1 ADC R1 Mux' 0"
+ cset "name='Stereo1 ADC MIXL ADC1 Switch' 0"
+ cset "name='Stereo1 ADC MIXR ADC1 Switch' 0"
+ ]
+
+ Value {
+ CapturePCM "hw:${CardId},0"
+ CapturePriority 200
+ CaptureMixerElem "STO1 ADC"
+ CaptureVolume "STO1 ADC Capture Volume"
+ }
+}
diff --git a/ucm2/Qualcomm/sc7180/rt5682-max98357a/init.conf b/ucm2/Qualcomm/sc7180/rt5682-max98357a/init.conf
new file mode 100644
index 0000000..5dee38a
--- /dev/null
+++ b/ucm2/Qualcomm/sc7180/rt5682-max98357a/init.conf
@@ -0,0 +1,24 @@
+BootSequence [
+ # Headphone
+ cset "name='HPOL Playback Switch' 0"
+ cset "name='HPOR Playback Switch' 0"
+ cset "name='Stereo1 DAC MIXL DAC L1 Switch' 0"
+ cset "name='Stereo1 DAC MIXR DAC R1 Switch' 0"
+
+ # Headset mic
+ cset "name='Stereo1 ADC L Mux' 0"
+ cset "name='STO1 ADC Capture Switch' on"
+ cset "name='RECMIX1L CBJ Switch' 1"
+ cset "name='CBJ Boost Volume' 3"
+ cset "name='Stereo1 ADC L1 Mux' 0"
+ cset "name='Stereo1 ADC R1 Mux' 0"
+ cset "name='Stereo1 ADC MIXL ADC1 Switch' 0"
+ cset "name='Stereo1 ADC MIXR ADC1 Switch' 0"
+
+ # Internal mic on ALC5682
+ cset "name='IF1 01 ADC Swap Mux' 1"
+ cset "name='Stereo1 ADC L2 Mux' 0"
+ cset "name='Stereo1 ADC R2 Mux' 0"
+ cset "name='Stereo1 ADC MIXL ADC2 Switch' 0"
+ cset "name='Stereo1 ADC MIXR ADC2 Switch' 0"
+]
diff --git a/ucm2/Qualcomm/sc7180/rt5682-max98357a/sc7180-rt5682-max98357a-1mic.conf b/ucm2/Qualcomm/sc7180/rt5682-max98357a/sc7180-rt5682-max98357a-1mic.conf
new file mode 100644
index 0000000..6a2be7e
--- /dev/null
+++ b/ucm2/Qualcomm/sc7180/rt5682-max98357a/sc7180-rt5682-max98357a-1mic.conf
@@ -0,0 +1,11 @@
+Comment "SC7180 RT5682 MAX98357A single microphone sound card"
+Syntax 4
+
+SectionUseCase."HiFi" {
+ File "/Qualcomm/sc7180/rt5682-max98357a/HiFi.conf"
+ Comment "Default"
+}
+
+Include.card-init.File "/lib/card-init.conf"
+Include.ctl-remap.File "/lib/ctl-remap.conf"
+Include.init.File "/Qualcomm/sc7180/rt5682-max98357a/init.conf"
diff --git a/ucm2/conf.d/SC7180/sc7180-rt5682-max98357a-1mic.conf b/ucm2/conf.d/SC7180/sc7180-rt5682-max98357a-1mic.conf
new file mode 120000
index 0000000..00f3e9e
--- /dev/null
+++ b/ucm2/conf.d/SC7180/sc7180-rt5682-max98357a-1mic.conf
@@ -0,0 +1 @@
+../../Qualcomm/sc7180/rt5682-max98357a/sc7180-rt5682-max98357a-1mic.conf
\ No newline at end of file
--
2.31.1
From 60ea26507390bad3742af2272ba08b21f009d0ef Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Thu, 9 Dec 2021 11:24:14 +0100
Subject: [PATCH 3/3] acp: fix linked configuration
Fixes: https://github.com/alsa-project/alsa-lib/issues/199
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
ucm2/common/linked-card.conf | 3 +++
ucm2/conf.d/acp/acp.conf | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
create mode 100644 ucm2/common/linked-card.conf
diff --git a/ucm2/common/linked-card.conf b/ucm2/common/linked-card.conf
new file mode 100644
index 0000000..a90f20e
--- /dev/null
+++ b/ucm2/common/linked-card.conf
@@ -0,0 +1,3 @@
+Syntax 3
+
+Include.linked.File "/common/linked.conf"
diff --git a/ucm2/conf.d/acp/acp.conf b/ucm2/conf.d/acp/acp.conf
index 5f056c7..7298c24 120000
--- a/ucm2/conf.d/acp/acp.conf
+++ b/ucm2/conf.d/acp/acp.conf
@@ -1 +1 @@
-../../common/linked.conf
\ No newline at end of file
+../../common/linked-card.conf
\ No newline at end of file
--
2.31.1

View File

@ -1,3 +1,4 @@
SHA512 (alsa-lib-1.2.6.tar.bz2) = ae95718813abf62811fe44c6df2a8de5a1227da4b022c4dd97dd8e7c1001f48307ba36bf04208bdbe24e8a8eebf4ed5a59f40ee6750dcbe976678071c3f2f5b7
SHA512 (alsa-ucm-conf-1.2.6.tar.bz2) = 5fe85643b60c8defeafcdfcf97e61b5d05e6db28cef2466a70f63b8fffba22bdd50b83a5ca88806a6350de6e9d802dd3c2240b293190b9d05daea515c03d4397
SHA512 (alsa-lib-1.2.6.1.tar.bz2) = 70e539cf092b5d43e00e4134d8a3e184f0dc34312823e4b58a574320cbf06cb7369bc3251ecb1858033756a7a8c35d36faa8da48d49f6efe0cec905784adbd45
SHA512 (alsa-ucm-conf-1.2.6.2.tar.bz2) = d7122279bc36ab16dfe1a5f2e24b9dda57e1b59b7c7aeac3c8755af62b464053ed038aa56ebb52d7707ecae01674cac920ea784bb7493d978276a98cbf78d873
SHA512 (alsa-topology-conf-1.2.5.tar.bz2) = 2eb4d8baf2dcbf0b631dd11dbf15bffc51694d9cc6931619e51787f3ba58d1a091d266e6721a3b737c040ec74a28270b93f39fb97f30a3227cf340dd646e5d51