]> git.alsa-project.org Git - alsa-ucm-conf.git/commitdiff
tegra: Add UCM for RT5631 based ASUS Transformers
authorIon Agorria <ion@agorria.com>
Mon, 4 Jul 2022 18:11:14 +0000 (21:11 +0300)
committerJaroslav Kysela <perex@perex.cz>
Mon, 21 Aug 2023 13:34:27 +0000 (15:34 +0200)
Realtek RT5631 based ASUS Transformer tablet devices are powered by
NVIDIA Tegra30 SoC. They feature 2-channel built-in speaker, built-in
1-channel microphone and 4-pin 3.5mm jack for headphones/headset.

Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/291
Tested-by: Andreas Westman Dorcsak <hedmoo@yahoo.com> # ASUS TF700T T30
Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # ASUS TF201 T30
Signed-off-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ucm2/Tegra/rt5631/Asus-Transformer-HiFi.conf [new file with mode: 0644]
ucm2/Tegra/rt5631/Asus-Transformer.conf [new file with mode: 0644]
ucm2/conf.d/tegra/Asus Transformer Infinity TF700T RT5631.conf [new symlink]
ucm2/conf.d/tegra/Asus Transformer Pad TF300TG RT5631.conf [new symlink]
ucm2/conf.d/tegra/Asus Transformer Pad TF300TL RT5631.conf [new symlink]
ucm2/conf.d/tegra/Asus Transformer Prime TF201 RT5631.conf [new symlink]

diff --git a/ucm2/Tegra/rt5631/Asus-Transformer-HiFi.conf b/ucm2/Tegra/rt5631/Asus-Transformer-HiFi.conf
new file mode 100644 (file)
index 0000000..adf3f26
--- /dev/null
@@ -0,0 +1,101 @@
+# Use case Configuration for RT5631 based ASUS Transformers
+
+SectionDevice."Speaker" {
+       Comment "Speaker"
+
+       ConflictingDevice [
+               "Headphones"
+       ]
+
+       EnableSequence [
+               cset "name='Speaker Playback Switch' on"
+               cset "name='Int Spk Switch' on"
+       ]
+
+       DisableSequence [
+               cset "name='Int Spk Switch' off"
+               cset "name='Speaker Playback Switch' off"
+       ]
+
+       Value {
+               PlaybackPCM "hw:${CardId}"
+               PlaybackChannels 2
+               PlaybackPriority 200
+
+               PlaybackMixerElem "Speaker"
+       }
+}
+
+SectionDevice."Headphones" {
+       Comment "Headphones"
+
+       ConflictingDevice [
+               "Speaker"
+       ]
+
+       EnableSequence [
+               cset "name='HP Playback Switch' on"
+       ]
+
+       DisableSequence [
+               cset "name='HP Playback Switch' off"
+       ]
+
+       Value {
+               PlaybackPCM "hw:${CardId}"
+               PlaybackChannels 2
+               PlaybackPriority 100
+
+               PlaybackMixerElem "HP"
+
+               JackControl "Headphone Jack"
+       }
+}
+
+SectionDevice."Mic1" {
+       Comment "Internal Microphone"
+
+       ConflictingDevice [
+               "Mic2"
+       ]
+
+       EnableSequence [
+               cset "name='DMIC Capture Switch' on"
+               cset "name='DMIC Switch' on"
+               cset "name='Int Mic Switch' on"
+       ]
+
+       DisableSequence [
+               cset "name='DMIC Capture Switch' off"
+               cset "name='DMIC Switch' off"
+               cset "name='Int Mic Switch' off"
+       ]
+
+       Value {
+               CapturePCM "hw:${CardId}"
+               CapturePriority 200
+       }
+}
+
+SectionDevice."Mic2" {
+       Comment "External Microphone"
+
+       ConflictingDevice [
+               "Mic1"
+       ]
+
+       EnableSequence [
+               cset "name='Mic Jack Switch' on"
+       ]
+
+       DisableSequence [
+               cset "name='Mic Jack Switch' off"
+       ]
+
+       Value {
+               CapturePCM "hw:${CardId}"
+               CapturePriority 100
+
+               JackControl "Mic Jack"
+       }
+}
diff --git a/ucm2/Tegra/rt5631/Asus-Transformer.conf b/ucm2/Tegra/rt5631/Asus-Transformer.conf
new file mode 100644 (file)
index 0000000..146e3b4
--- /dev/null
@@ -0,0 +1,65 @@
+# Use case Configuration for RT5631 based ASUS Transformers
+
+Syntax 4
+
+BootSequence [
+       cset "name='HP Playback Switch' off"
+       cset "name='Speaker Playback Switch' off"
+
+       cset "name='PCM Playback Switch' on"
+       cset "name='PCM Playback Volume' 255"
+       cset "name='AXI Capture Volume' 23"
+
+       cset "name='AXO2 Playback Switch' on"
+       cset "name='AXO2MIX Mixer OUTVOLL Playback Switch' on"
+
+       cset "name='DMIC Switch' off"
+       cset "name='DMIC Capture Switch' off"
+
+       cset "name='HPL Mux' Left HPVOL"
+       cset "name='HPR Mux' Right HPVOL"
+
+       cset "name='Mic Jack Switch' off"
+       cset "name='Int Mic Switch' off"
+       cset "name='Int Spk Switch' on"
+
+       cset "name='Left HPVOL Mux' OUTMIXL"
+       cset "name='Left OUTVOL Mux' OUTMIXL"
+       cset "name='Left SPKVOL Mux' SPKMIXL"
+
+       cset "name='MIC1 Boost Volume' 6"
+       cset "name='MIC1 Mode Control' Differential"
+       cset "name='MIC2 Boost Volume' 6"
+       cset "name='MIC2 Mode Control' Single ended"
+
+       cset "name='MONO Playback Switch' off"
+       cset "name='MONO Mux' MONOMIX"
+       cset "name='MONOIN Mode Control' Differential"
+       cset "name='MONOIN_RX Capture Volume' 25"
+
+       cset "name='OUTMIXL Mixer DACL Playback Switch' on"
+       cset "name='OUTMIXR Mixer DACR Playback Switch' on"
+
+       cset "name='OUTVOL Channel Switch' on"
+       cset "name='RECMIXL Mixer MIC1_BST1 Capture Switch' on"
+
+       cset "name='Right HPVOL Mux' OUTMIXR"
+       cset "name='Right OUTVOL Mux' OUTMIXR"
+       cset "name='Right SPKVOL Mux' SPKMIXR"
+
+       cset "name='SPK Ratio Control' 1.99x"
+
+       cset "name='SPKMIXL Mixer DACL Playback Switch' on"
+       cset "name='SPKMIXR Mixer DACR Playback Switch' on"
+
+       cset "name='SPOL Mux' SPOLMIX"
+       cset "name='SPOLMIX Mixer SPKVOLL Playback Switch' on"
+
+       cset "name='SPOR Mux' SPORMIX"
+       cset "name='SPORMIX Mixer SPKVOLR Playback Switch' on"
+]
+
+SectionUseCase."HiFi" {
+    File "/Tegra/rt5631/Asus-Transformer-HiFi.conf"
+    Comment "Play HiFi quality Music"
+}
diff --git a/ucm2/conf.d/tegra/Asus Transformer Infinity TF700T RT5631.conf b/ucm2/conf.d/tegra/Asus Transformer Infinity TF700T RT5631.conf
new file mode 120000 (symlink)
index 0000000..5be7edf
--- /dev/null
@@ -0,0 +1 @@
+../../Tegra/rt5631/Asus-Transformer.conf
\ No newline at end of file
diff --git a/ucm2/conf.d/tegra/Asus Transformer Pad TF300TG RT5631.conf b/ucm2/conf.d/tegra/Asus Transformer Pad TF300TG RT5631.conf
new file mode 120000 (symlink)
index 0000000..5be7edf
--- /dev/null
@@ -0,0 +1 @@
+../../Tegra/rt5631/Asus-Transformer.conf
\ No newline at end of file
diff --git a/ucm2/conf.d/tegra/Asus Transformer Pad TF300TL RT5631.conf b/ucm2/conf.d/tegra/Asus Transformer Pad TF300TL RT5631.conf
new file mode 120000 (symlink)
index 0000000..5be7edf
--- /dev/null
@@ -0,0 +1 @@
+../../Tegra/rt5631/Asus-Transformer.conf
\ No newline at end of file
diff --git a/ucm2/conf.d/tegra/Asus Transformer Prime TF201 RT5631.conf b/ucm2/conf.d/tegra/Asus Transformer Prime TF201 RT5631.conf
new file mode 120000 (symlink)
index 0000000..5be7edf
--- /dev/null
@@ -0,0 +1 @@
+../../Tegra/rt5631/Asus-Transformer.conf
\ No newline at end of file