AMD acp UCM fix

This commit is contained in:
Jaroslav Kysela 2021-12-09 12:24:17 +01:00
parent e0c620c590
commit e25e817147
2 changed files with 229 additions and 3 deletions

View File

@ -9,7 +9,7 @@
Summary: The Advanced Linux Sound Architecture (ALSA) library
Name: alsa-lib
Version: %{version_alsa_lib}
Release: 2%{?prever_dot}%{?dist}
Release: 3%{?prever_dot}%{?dist}
License: LGPLv2+
URL: http://www.alsa-project.org/
@ -167,7 +167,7 @@ rm %{buildroot}/%{_includedir}/asoundlib.h
%{_datadir}/alsa/topology
%changelog
* Thu Dec 9 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-2
* Thu Dec 9 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-3
- device open fixes from upstream
* Mon Dec 6 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-1

View File

@ -1,7 +1,7 @@
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] USB-Audio: fix the wrong condition type for
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
@ -26,3 +26,229 @@ index 878d16d..d9d740e 100644
--
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