Package: alsa-ucm-conf
Version: 1.2.4-2
Severity: wishlist
Tags: patch upstream
X-Debbugs-Cc: Arnaud Ferraris <arnaud.ferra...@collabora.com>

Hello.

Please apply the attached changes by Arnaud Ferraris.  They have been
applied and tested by the Mobian distribution for a few months.

The Pinephone part is forwarded to ALSA upstream (though currently
waiting for approval, so no Forwarded: URL yet).

The PineTab part is not forwarded. Upstream requires the output of
alsa-info executed on the actual hardware.

The Librem5 part is incomplete but useful nevertheless.

Thanks.
>From 997a22545f3df75c3c1b6cae49f0a4cccbb5d266 Mon Sep 17 00:00:00 2001
From: Arnaud Ferraris <arnaud.ferra...@collabora.com>
Date: Tue, 12 May 2020 09:43:51 +0200
Subject: [PATCH 1/2] ucm2: add PinePhone configuration

---
 ucm2/PinePhone/HiFi.conf      | 139 +++++++++++++++++++++++++++++++++
 ucm2/PinePhone/PinePhone.conf |  11 +++
 ucm2/PinePhone/VoiceCall.conf | 142 ++++++++++++++++++++++++++++++++++
 3 files changed, 292 insertions(+)
 create mode 100644 ucm2/PinePhone/HiFi.conf
 create mode 100644 ucm2/PinePhone/PinePhone.conf
 create mode 100644 ucm2/PinePhone/VoiceCall.conf

diff --git a/ucm2/PinePhone/HiFi.conf b/ucm2/PinePhone/HiFi.conf
new file mode 100644
index 0000000..a6a1cf8
--- /dev/null
+++ b/ucm2/PinePhone/HiFi.conf
@@ -0,0 +1,137 @@
+SectionVerb {
+	EnableSequence [
+		cset "name='Headphone Playback Switch' off"
+		cset "name='Headphone Source Playback Route' DAC"
+		cset "name='Line In Playback Switch' off"
+		cset "name='Line Out Playback Switch' off"
+		cset "name='Line Out Source Playback Route' Mono Differential"
+		cset "name='Mic1 Playback Switch' off"
+		cset "name='Mic2 Playback Switch' off"
+		cset "name='AIF1 DA0 Playback Volume' 160"
+		cset "name='AIF3 ADC Source Capture Route' None"
+		cset "name='AIF2 DAC Source Playback Route' AIF2"
+		cset "name='DAC Playback Switch' on"
+		cset "name='DAC Playback Volume' 160"
+		cset "name='ADC Digital DAC Playback Switch' off"
+		cset "name='AIF1 Slot 0 Digital DAC Playback Switch' on"
+		cset "name='AIF2 Digital DAC Playback Switch' off"
+		cset "name='DAC Reversed Playback Switch' off"
+		cset "name='Earpiece Playback Switch' off"
+		cset "name='Earpiece Source Playback Route' DACL"
+
+		cset "name='Line In Capture Switch' off"
+		cset "name='Mic1 Capture Switch' off"
+		cset "name='Mic2 Capture Switch' off"
+		cset "name='Mixer Capture Switch' off"
+		cset "name='Mixer Reversed Capture Switch' off"
+		cset "name='ADC Capture Volume' 160"
+		cset "name='AIF1 AD0 Capture Volume' 160"
+		cset "name='AIF1 Data Digital ADC Capture Switch' on"
+		cset "name='AIF2 ADC Mixer ADC Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF2 DAC Rev Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+	]
+	DisableSequence [
+	]
+	Value {
+	}
+}
+
+SectionDevice."Speaker" {
+	Comment "Internal speaker"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono"
+		cset "name='Line Out Playback Switch' on"
+		cset "name='Line Out Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Line Out Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Line Out Playback Volume"
+		PlaybackSwitch "Line Out Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 300
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+SectionDevice."Earpiece" {
+	Comment "Internal Earpiece"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono"
+		cset "name='Earpiece Playback Switch' on"
+		cset "name='Earpiece Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Earpiece Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Earpiece Playback Volume"
+		PlaybackSwitch "Earpiece Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 100
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+SectionDevice."DigitalMic" {
+	Comment "Internal Microphone"
+	ConflictingDevice [
+		"HeadsetMic"
+	]
+	EnableSequence [
+		cset "name='Mic1 Capture Switch' on"
+	]
+	DisableSequence [
+		cset "name='Mic1 Capture Switch' off"
+	]
+	Value {
+		CapturePriority 100
+		CapturePCM "hw:${CardId},0"
+		CaptureChannels "2"
+	}
+}
+SectionDevice."HeadsetMic" {
+	Comment "Headset Microphone"
+	ConflictingDevice [
+		"DigitalMic"
+	]
+	EnableSequence [
+		cset "name='Mic2 Capture Switch' on"
+	]
+	DisableSequence [
+		cset "name='Mic2 Capture Switch' off"
+	]
+	Value {
+		CapturePriority 200
+		CapturePCM "hw:${CardId},0"
+		CaptureChannels "2"
+		JackControl "Headset Microphone Jack"
+	}
+}
+SectionDevice."Headphone" {
+	Comment "Headphones"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Stereo"
+		cset "name='Headphone Playback Switch' on"
+		cset "name='Headphone Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Headphone Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Headphone Playback Volume"
+		PlaybackSwitch "Headphone Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 500
+		PlaybackPCM "hw:${CardId},0"
+		JackControl "Headphone Jack"
+	}
+}
diff --git a/ucm2/PinePhone/PinePhone.conf b/ucm2/PinePhone/PinePhone.conf
new file mode 100644
index 0000000..3741216
--- /dev/null
+++ b/ucm2/PinePhone/PinePhone.conf
@@ -0,0 +1,11 @@
+Syntax 2
+
+SectionUseCase."HiFi" {
+	File "HiFi.conf"
+	Comment "Default"
+}
+
+SectionUseCase."Voice Call" {
+	File "VoiceCall.conf"
+	Comment "Phone call"
+}
diff --git a/ucm2/PinePhone/VoiceCall.conf b/ucm2/PinePhone/VoiceCall.conf
new file mode 100644
index 0000000..bc37975
--- /dev/null
+++ b/ucm2/PinePhone/VoiceCall.conf
@@ -0,0 +1,141 @@
+SectionVerb {
+	EnableSequence [
+		cset "name='Headphone Playback Switch' off"
+		cset "name='Headphone Source Playback Route' DAC"
+		cset "name='Line In Playback Switch' off"
+		cset "name='Line Out Playback Switch' off"
+		cset "name='Line Out Source Playback Route' Mono Differential"
+		cset "name='Mic1 Playback Switch' off"
+		cset "name='Mic2 Playback Switch' off"
+		cset "name='AIF1 DA0 Playback Volume' 160"
+		cset "name='AIF2 DAC Playback Volume' 160"
+		cset "name='AIF2 DAC Stereo Playback Route' Mix Mono"
+		cset "name='AIF3 ADC Source Capture Route' None"
+		cset "name='AIF2 DAC Source Playback Route' AIF2"
+		cset "name='DAC Playback Switch' on"
+		cset "name='DAC Playback Volume' 160"
+		cset "name='ADC Digital DAC Playback Switch' off"
+		cset "name='AIF1 Slot 0 Digital DAC Playback Switch' on"
+		cset "name='AIF2 Digital DAC Playback Switch' on"
+		cset "name='DAC Reversed Playback Switch' off"
+		cset "name='Earpiece Playback Switch' off"
+		cset "name='Earpiece Source Playback Route' DACL"
+
+		cset "name='Line In Capture Switch' off"
+		cset "name='Mic1 Capture Switch' off"
+		cset "name='Mic2 Capture Switch' off"
+		cset "name='Mixer Capture Switch' off"
+		cset "name='Mixer Reversed Capture Switch' off"
+		cset "name='ADC Capture Volume' 160"
+		cset "name='AIF1 AD0 Capture Volume' 160"
+		cset "name='AIF1 Data Digital ADC Capture Switch' on"
+		cset "name='AIF2 ADC Capture Volume' 160"
+		cset "name='AIF2 ADC Mixer ADC Capture Switch' on"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF2 DAC Rev Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+	]
+	DisableSequence [
+	]
+	Value {
+		PlaybackRate 8000
+	}
+}
+
+SectionDevice."Speaker" {
+	Comment "Internal speaker"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono"
+		cset "name='Line Out Playback Switch' on"
+		cset "name='Line Out Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Line Out Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Line Out Playback Volume"
+		PlaybackSwitch "Line Out Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 100
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+SectionDevice."Earpiece" {
+	Comment "Internal Earpiece"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono"
+		cset "name='Earpiece Playback Switch' on"
+		cset "name='Earpiece Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Earpiece Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Earpiece Playback Volume"
+		PlaybackSwitch "Earpiece Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 300
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+SectionDevice."DigitalMic" {
+	Comment "Internal Microphone"
+	ConflictingDevice [
+		"HeadsetMic"
+	]
+	EnableSequence [
+		cset "name='Mic1 Capture Switch' on"
+	]
+	DisableSequence [
+		cset "name='Mic1 Capture Switch' off"
+	]
+	Value {
+		CapturePriority 100
+		CapturePCM "hw:${CardId},0"
+		CaptureChannels "2"
+	}
+}
+SectionDevice."HeadsetMic" {
+	Comment "Headset Microphone"
+	ConflictingDevice [
+		"DigitalMic"
+	]
+	EnableSequence [
+		cset "name='Mic2 Capture Switch' on"
+	]
+	DisableSequence [
+		cset "name='Mic2 Capture Switch' off"
+	]
+	Value {
+		CapturePriority 200
+		CapturePCM "hw:${CardId},0"
+		CaptureChannels "2"
+		JackControl "Headset Microphone Jack"
+	}
+}
+SectionDevice."Headphone" {
+	Comment "Headset"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Stereo"
+		cset "name='Headphone Playback Switch' on"
+		cset "name='Headphone Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Headphone Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Headphone Playback Volume"
+		PlaybackSwitch "Headphone Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 500
+		PlaybackPCM "hw:${CardId},0"
+		JackControl "Headphone Jack"
+	}
+}
-- 
2.28.0

>From 17860f29124d3d37140833f45ba6b6ad5ed251c3 Mon Sep 17 00:00:00 2001
From: Arnaud Ferraris <arnaud.ferra...@collabora.com>
Date: Tue, 12 May 2020 09:43:51 +0200
Subject: [PATCH 2/2] ucm2: add PineTab configuration

---
 ucm2/PineTab/HiFi.conf    | 100 ++++++++++++++++++++++++++++++++++++++
 ucm2/PineTab/PineTab.conf |   6 +++
 2 files changed, 106 insertions(+)
 create mode 100644 ucm2/PineTab/HiFi.conf
 create mode 100644 ucm2/PineTab/PineTab.conf

diff --git a/ucm2/PineTab/HiFi.conf b/ucm2/PineTab/HiFi.conf
new file mode 100644
index 0000000..f84ae73
--- /dev/null
+++ b/ucm2/PineTab/HiFi.conf
@@ -0,0 +1,100 @@
+SectionVerb {
+	EnableSequence [
+		cset "name='Headphone Playback Switch' off"
+		cset "name='Headphone Source Playback Route' DAC"
+		cset "name='Line In Playback Switch' off"
+		cset "name='Line Out Playback Switch' off"
+		cset "name='Line Out Source Playback Route' Stereo"
+		cset "name='Mic1 Playback Switch' off"
+		cset "name='Mic2 Playback Switch' off"
+		cset "name='AIF1 DA0 Playback Volume' 160"
+		cset "name='AIF3 ADC Source Capture Route' None"
+		cset "name='AIF2 DAC Source Playback Route' AIF2"
+		cset "name='DAC Playback Switch' on"
+		cset "name='DAC Playback Volume' 160"
+		cset "name='ADC Digital DAC Playback Switch' off"
+		cset "name='AIF1 Slot 0 Digital DAC Playback Switch' on"
+		cset "name='AIF2 Digital DAC Playback Switch' off"
+		cset "name='DAC Reversed Playback Switch' off"
+		cset "name='Earpiece Playback Switch' off"
+		cset "name='Earpiece Source Playback Route' DACL"
+
+		cset "name='Line In Capture Switch' off"
+		cset "name='Mic1 Capture Switch' off"
+		cset "name='Mic2 Capture Switch' off"
+		cset "name='Mixer Capture Switch' off"
+		cset "name='Mixer Reversed Capture Switch' off"
+		cset "name='ADC Capture Volume' 160"
+		cset "name='AIF1 AD0 Capture Volume' 160"
+		cset "name='AIF1 Data Digital ADC Capture Switch' on"
+		cset "name='AIF2 ADC Mixer ADC Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF2 DAC Rev Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+		cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off"
+	]
+	DisableSequence [
+	]
+	Value {
+		PlaybackPCM "hw:${CardId},0"
+		CapturePCM "hw:${CardId},0"
+	}
+}
+
+SectionDevice."Speaker" {
+	Comment "Internal speaker"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Stereo"
+		cset "name='Line Out Playback Switch' on"
+		cset "name='Line Out Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Line Out Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Line Out Playback Volume"
+		PlaybackSwitch "Line Out Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 100
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+SectionDevice."DigitalMic" {
+	Comment "Internal Microphone"
+	EnableSequence [
+		cset "name='Mic1 Capture Switch' on"
+		cset "name='Mic2 Capture Switch' on"
+	]
+	DisableSequence [
+		cset "name='Mic1 Capture Switch' off"
+		cset "name='Mic2 Capture Switch' off"
+	]
+	Value {
+		CapturePriority 100
+		CapturePCM "hw:${CardId},0"
+		CaptureChannels "2"
+	}
+}
+SectionDevice."Headphone" {
+	Comment "Headphones"
+	EnableSequence [
+		cset "name='AIF1 DA0 Stereo Playback Route' Stereo"
+		cset "name='Headphone Playback Switch' on"
+		cset "name='Headphone Playback Volume' 100%"
+	]
+
+	DisableSequence [
+		cset "name='Headphone Playback Switch' off"
+	]
+
+	Value {
+		PlaybackVolume "Headphone Playback Volume"
+		PlaybackSwitch "Headphone Playback Switch"
+		PlaybackChannels "2"
+		PlaybackPriority 200
+		PlaybackPCM "hw:${CardId},0"
+		JackControl "Headphone Jack"
+	}
+}
diff --git a/ucm2/PineTab/PineTab.conf b/ucm2/PineTab/PineTab.conf
new file mode 100644
index 0000000..d672df2
--- /dev/null
+++ b/ucm2/PineTab/PineTab.conf
@@ -0,0 +1,6 @@
+Syntax 2
+
+SectionUseCase."HiFi" {
+	File "HiFi.conf"
+	Comment "Default"
+}
-- 
2.28.0

>From b4e59d4d9ed1922cdd77159bd732314e8b10591e Mon Sep 17 00:00:00 2001
From: Arnaud Ferraris <arnaud.ferra...@collabora.com>
Date: Thu, 8 Oct 2020 17:45:30 +0200
Subject: [PATCH] ucm2: add improved Librem 5 profile

This commit adds a more fine-tuned UCM profile for the Librem 5:
* input and ouput paths are split so we can select both devices
  separately
* it uses standard UCM names for the use-cases and devices

This is not the final profile, as it requires additional components:
* The headset mic isn't functional on the L5 yet and mic detection isn't
  implemented, so Headset mic priority is lowered to make sure the
  internal microphone is always used
---
 ucm2/Librem_5/HiFi.conf     | 174 ++++++++++++++++++++++++++++++++++++
 ucm2/Librem_5/Librem_5.conf |  11 +++
 ucm2/Librem_5/wm8962.conf   |   1 +
 ucm2/wm8962                 |   1 +
 5 files changed, 206 insertions(+)
 create mode 100644 ucm2/Librem_5/HiFi.conf
 create mode 100644 ucm2/Librem_5/Librem_5.conf
 create mode 120000 ucm2/Librem_5/wm8962.conf
 create mode 120000 ucm2/wm8962

diff --git a/ucm2/Librem_5/HiFi.conf b/ucm2/Librem_5/HiFi.conf
new file mode 100644
index 0000000..ee22392
--- /dev/null
+++ b/ucm2/Librem_5/HiFi.conf
@@ -0,0 +1,175 @@
+SectionVerb {
+	EnableSequence [
+		cset "name='Digital Playback Volume' 100,100"
+		cset "name='MIXINL IN2L Switch' off"
+		cset "name='MIXINL IN3L Switch' off"
+		cset "name='MIXINR IN2R Switch' off"
+		cset "name='MIXINR IN3R Switch' off"
+		cset "name='INPGAR IN1R Switch' off"
+		cset "name='INPGAR IN2R Switch' off"
+		cset "name='INPGAR IN3R Switch' on"
+		cset "name='INPGAR IN4R Switch' off"
+		cset "name='INPGAL IN1L Switch' off"
+		cset "name='INPGAL IN2L Switch' off"
+		cset "name='INPGAL IN3L Switch' off"
+		cset "name='INPGAL IN4L Switch' off"
+		cset "name='Input Mixer Switch' off,on"
+		cset "name='SPKOUTL PGA' Mixer"
+		cset "name='SPKOUTR PGA' Mixer"
+	]
+
+	DisableSequence [
+		cset "name='Digital Playback Volume' 0,0"
+	]
+
+	Value {
+	}
+}
+
+SectionDevice."Handset" {
+	Comment "Handset"
+
+	ConflictingDevice [
+		"Headphones"
+		"Speaker"
+	]
+
+	EnableSequence [
+		cset "name='Speaker Switch' off,on"
+		cset "name='DAC L/R Swap Switch' on"
+		cset "name='DAC Monomix Switch' on"
+		cset "name='SPKOUTR PGA' DAC"
+		cset "name='Speaker Volume' 121,121"
+		cset "name='Speaker Boost Volume' 2"
+	]
+
+	DisableSequence [
+		cset "name='Speaker Switch' off,off"
+		cset "name='DAC L/R Swap Switch' off"
+		cset "name='DAC Monomix Switch' off"
+		cset "name='SPKOUTR PGA' Mixer"
+	]
+
+	Value {
+		PlaybackChannels "2"
+		PlaybackPriority "100"
+		PlaybackVolume "name='Speaker Volume'"
+		PlaybackSwitch "name='Speaker Switch'"
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+
+SectionDevice."Speaker" {
+	Comment "Speaker"
+
+	ConflictingDevice [
+		"Handset"
+		"Headphones"
+	]
+
+	EnableSequence [
+		cset "name='Speaker Switch' on,off"
+		cset "name='DAC Monomix Switch' on"
+		cset "name='SPKOUTL PGA' DAC"
+		cset "name='Speaker Volume' 121,121"
+		cset "name='Speaker Boost Volume' 6"
+	]
+
+	DisableSequence [
+		cset "name='Speaker Switch' off,off"
+		cset "name='DAC Monomix Switch' off"
+		cset "name='SPKOUTL PGA' Mixer"
+	]
+
+	Value {
+		PlaybackChannels "2"
+		PlaybackPriority "500"
+		PlaybackVolume "name='Speaker Volume'"
+		PlaybackSwitch "name='Speaker Switch'"
+		PlaybackPCM "hw:${CardId},0"
+	}
+}
+
+SectionDevice."Headphones" {
+	Comment "Headphones"
+
+	ConflictingDevice [
+		"Handset"
+		"Speaker"
+	]
+
+	EnableSequence [
+		cset "name='Headphone Switch' on,on"
+		cset "name='HPOUTL PGA' 0 unmute"
+		cset "name='HPOUTR PGA' 0 unmute"
+		cset "name='Headphone Aux Volume' 0"
+		cset "name='Headphone Volume' 121,121"
+	]
+
+	DisableSequence [
+		cset "name='Headphone Switch' off off"
+		cset "name='HPOUTL PGA' 0 mute"
+		cset "name='HPOUTR PGA' 0 mute"
+	]
+
+	Value {
+		PlaybackPriority "1000"
+		PlaybackChannels "2"
+		PlaybackVolume "name='Headphone Volume'"
+		PlaybackSwitch "name='Headphone Switch'"
+		PlaybackPCM "hw:${CardId},0"
+		JackControl "Headphones Jack"
+	}
+}
+
+SectionDevice."Mic" {
+	Comment "Internal Microphone"
+
+	ConflictingDevice [
+		"Headset"
+	]
+
+	EnableSequence [
+		cset "name='Digital Capture Volume' 116,116"
+		cset "name='ADC L/R Swap Switch' on"
+	]
+
+	DisableSequence [
+		cset "name='Digital Capture Volume' 0,0"
+		cset "name='ADC L/R Swap Switch' off"
+	]
+
+	Value {
+		CapturePriority "500"
+		CaptureChannels "2"
+		CaptureVolume "name='Digital Capture Volume'"
+		CapturePCM "hw:${CardId},0"
+	}
+}
+
+SectionDevice."Headset" {
+	Comment "Headset Microphone"
+
+	ConflictingDevice [
+		"Mic"
+	]
+
+	EnableSequence [
+		cset "name='MIXINR IN3R Switch' on"
+		cset "name='MIXINR IN3R Volume' 7"
+	]
+
+	DisableSequence [
+		cset "name='MIXINR IN3R Switch' off"
+		cset "name='MIXINR IN3R Volume' 0"
+	]
+
+	Value {
+		CapturePriority "100"
+		CaptureChannels "2"
+		CaptureVolume "name='MIXINR IN3R Volume'"
+		CaptureSwitch "name='MIXINR IN3R Switch'"
+		CapturePCM "hw:${CardId},0"
+		JackControl "Headphones Jack"
+	}
+}
diff --git a/ucm2/Librem_5/Librem_5.conf b/ucm2/Librem_5/Librem_5.conf
new file mode 100644
index 0000000..3741216
--- /dev/null
+++ b/ucm2/Librem_5/Librem_5.conf
@@ -0,0 +1,6 @@
+Syntax 2
+
+SectionUseCase."HiFi" {
+	File "HiFi.conf"
+	Comment "Default"
+}
diff --git a/ucm2/Librem_5/wm8962.conf b/ucm2/Librem_5/wm8962.conf
new file mode 120000
index 0000000..ea620cc
--- /dev/null
+++ b/ucm2/Librem_5/wm8962.conf
@@ -0,0 +1 @@
+Librem_5.conf
\ No newline at end of file
diff --git a/ucm2/wm8962 b/ucm2/wm8962
new file mode 120000
index 0000000..9c04c54
--- /dev/null
+++ b/ucm2/wm8962
@@ -0,0 +1 @@
+Librem_5
\ No newline at end of file
-- 
2.28.0

Reply via email to