From 55748c8eb5d77740e1b84c51c5a60a5aadb1d1d3103aa4bd7ca446d5bf08e227 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 5 Jan 2021 14:46:53 +0000 Subject: [PATCH] Accepting request 860484 from home:tiwai:branches:multimedia:libs - Backport upstream fixes: HD-audio dual codec fixes and the builtin mic fix for rt5645-based devices: 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch OBS-URL: https://build.opensuse.org/request/show/860484 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/alsa-ucm-conf?expand=0&rev=27 --- ...ual-Add-EnableSequence-and-DisableSe.patch | 50 +++++++++++++++++++ ...ual-Add-BootSequence-and-disable-pla.patch | 49 ++++++++++++++++++ ...45-Enable-Internal-MIC-of-ECS-EF20EA.patch | 36 +++++++++++++ alsa-ucm-conf.changes | 9 ++++ alsa-ucm-conf.spec | 8 ++- 5 files changed, 151 insertions(+), 1 deletion(-) create mode 100644 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch create mode 100644 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch create mode 100644 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch diff --git a/0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch b/0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch new file mode 100644 index 0000000..96b8f19 --- /dev/null +++ b/0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch @@ -0,0 +1,50 @@ +From 5405544752c18153acc310ee7e4a4bacda040dca Mon Sep 17 00:00:00 2001 +From: Kai-Heng Feng +Date: Thu, 27 Aug 2020 21:18:13 +0800 +Subject: [PATCH 10/12] HDA-Intel/HiFi-dual: Add EnableSequence and + DisableSequence for Speaker and Headphones + +BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/48 +Signed-off-by: Kai-Heng Feng +Signed-off-by: Jaroslav Kysela +--- + ucm2/HDA-Intel/HiFi-dual.conf | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/ucm2/HDA-Intel/HiFi-dual.conf b/ucm2/HDA-Intel/HiFi-dual.conf +index cff948efee91..bacfd8027f49 100644 +--- a/ucm2/HDA-Intel/HiFi-dual.conf ++++ b/ucm2/HDA-Intel/HiFi-dual.conf +@@ -27,6 +27,14 @@ SectionDevice."Speaker" { + PlaybackMixerElem "Speaker" + } + ++ EnableSequence [ ++ cset "name='Speaker Playback Switch' on" ++ ] ++ ++ DisableSequence [ ++ cset "name='Speaker Playback Switch' off" ++ ] ++ + ConflictingDevice [ + "Headphones" + ] +@@ -54,6 +62,14 @@ SectionDevice."Headphones" { + JackHWMute "Speaker" + } + ++ EnableSequence [ ++ cset "name='Headphone Playback Switch' on" ++ ] ++ ++ DisableSequence [ ++ cset "name='Headphone Playback Switch' off" ++ ] ++ + ConflictingDevice [ + "Speaker" + ] +-- +2.26.2 + diff --git a/0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch b/0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch new file mode 100644 index 0000000..2c62b66 --- /dev/null +++ b/0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch @@ -0,0 +1,49 @@ +From 5947daef124c84fae511233248196576dfbfab7c Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Wed, 16 Dec 2020 08:55:04 +0100 +Subject: [PATCH 11/12] HDA-Intel/HiFi-dual: Add BootSequence and disable + playback channels in verb init + +BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/48 +Signed-off-by: Jaroslav Kysela +--- + ucm2/HDA-Intel/HDAudio-DualCodecs.conf | 12 ++++++++++++ + ucm2/HDA-Intel/HiFi-dual.conf | 2 ++ + 2 files changed, 14 insertions(+) + +diff --git a/ucm2/HDA-Intel/HDAudio-DualCodecs.conf b/ucm2/HDA-Intel/HDAudio-DualCodecs.conf +index 8aaabd0c819d..6fd7bd1032f5 100644 +--- a/ucm2/HDA-Intel/HDAudio-DualCodecs.conf ++++ b/ucm2/HDA-Intel/HDAudio-DualCodecs.conf +@@ -4,3 +4,15 @@ SectionUseCase."HiFi" { + File "HiFi-dual.conf" + Comment "Default" + } ++ ++BootSequence [ ++ cset "name='Headphone Playback Volume' 60%" ++ cset "name='Headphone Playback Switch' off" ++ cset "name='Speaker Playback Volume' 60%" ++ cset "name='Speaker Playback Switch' on" ++ cset "name='Front Playback Volume' 100%" ++ cset "name='Front Playback Switch' on" ++ cset "name='Rear-Panel Capture Volume' 100%" ++ cset "name='Rear-Panel Capture Switch' on" ++ cset "name='Input Source' Rear Mic" ++] +diff --git a/ucm2/HDA-Intel/HiFi-dual.conf b/ucm2/HDA-Intel/HiFi-dual.conf +index bacfd8027f49..f2c691501057 100644 +--- a/ucm2/HDA-Intel/HiFi-dual.conf ++++ b/ucm2/HDA-Intel/HiFi-dual.conf +@@ -8,6 +8,8 @@ SectionVerb { + cset "name='Front Playback Switch' on" + cset "name='Rear-Panel Capture Volume' 100%" + cset "name='Rear-Panel Capture Switch' on" ++ cset "name='Headphone Playback Switch' off" ++ cset "name='Speaker Playback Switch' off" + ] + + DisableSequence [ +-- +2.26.2 + diff --git a/0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch b/0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch new file mode 100644 index 0000000..e83d2f6 --- /dev/null +++ b/0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch @@ -0,0 +1,36 @@ +From 5634db4be3ed435f3e59f30a71c3c3711162929d Mon Sep 17 00:00:00 2001 +From: Jian-Hong Pan +Date: Tue, 15 Dec 2020 16:54:03 +0800 +Subject: [PATCH 12/12] chtrt5645: Enable Internal MIC of ECS EF20EA + +The ECS EF20EA uses a digital mic connected to the dmic2 pin, rather +then the default analog mic. + +1 [chtrt5645 ]: chtrt5645 - chtrt5645 + Standard-EF20EA-1.0 + +Add a card long name match for this, so that the right config is used. + +BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/68 +Signed-off-by: Jian-Hong Pan +Signed-off-by: Jaroslav Kysela +--- + ucm2/chtrt5645/HiFi.conf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ucm2/chtrt5645/HiFi.conf b/ucm2/chtrt5645/HiFi.conf +index 10b0a1c22f97..30fad5013d02 100644 +--- a/ucm2/chtrt5645/HiFi.conf ++++ b/ucm2/chtrt5645/HiFi.conf +@@ -18,7 +18,7 @@ If.cfg-dmic2 { + Condition { + Type RegexMatch + String "${CardLongName}" +- Regex "(LENOVO.*LenovoMIIX320|MEDION.*Wingman)" ++ Regex "(LENOVO.*LenovoMIIX320|MEDION.*Wingman|Standard-EF20EA-1.0)" + } + True { + Define.AnalogMic "" +-- +2.26.2 + diff --git a/alsa-ucm-conf.changes b/alsa-ucm-conf.changes index 16e9cc8..3fb6421 100644 --- a/alsa-ucm-conf.changes +++ b/alsa-ucm-conf.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Tue Jan 5 15:19:35 CET 2021 - tiwai@suse.de + +- Backport upstream fixes: HD-audio dual codec fixes and the builtin + mic fix for rt5645-based devices: + 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch + 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch + 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch + ------------------------------------------------------------------- Mon Dec 14 16:20:59 CET 2020 - tiwai@suse.de diff --git a/alsa-ucm-conf.spec b/alsa-ucm-conf.spec index b6c93cf..5055ef8 100644 --- a/alsa-ucm-conf.spec +++ b/alsa-ucm-conf.spec @@ -1,7 +1,7 @@ # # spec file for package alsa-ucm-conf # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -32,6 +32,9 @@ Patch6: 0006-chtnau8824-Add-support-for-laptops-using-stereo-DMIC.patch Patch7: 0007-chtnau8824-Boost-analog-mic-volumes-a-bit.patch Patch8: 0008-rt715-init-setup-ADC07-to-a-proper-volume.patch Patch9: 0009-sof-hda-dsp-Set-Master-Playback-Switch-on-in-the-Boo.patch +Patch10: 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch +Patch11: 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch +Patch12: 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -49,6 +52,9 @@ This package contains the profiles files for ALSA UCM (Use Case Manager). %patch7 -p1 %patch8 -p1 %patch9 -p1 +%patch10 -p1 +%patch11 -p1 +%patch12 -p1 %build