[alsa-devel] [PATCH] ucm: Add ucm files for DB410c board.
Riku Voipio
riku.voipio at linaro.org
Mon Aug 8 15:23:10 CEST 2016
From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
DB410c board has support for both Digital and Analog audio. Digital
audio is over HDMI and analog is over codec chip integrated inside the
APQ8016 SOC.
It can support:
- 3 Microphones: Primary Mic(Handset mic), Headset Mic and Secondary
- 2 Digital Microphones.
- Earpiece.
- Headset.
- Loud Speaker.
- HDMI.
[Riku: squashed Srinivas's patches together and converted spaces to tabs]
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
Signed-off-by: Riku Voipio <riku.voipio at linaro.org>
Cc: nicolas.dechesne at linaro.org
---
configure.ac | 1 +
src/conf/ucm/DB410c/DB410c.conf | 8 ++
src/conf/ucm/DB410c/HDMI | 31 +++++++
src/conf/ucm/DB410c/HiFi | 185 ++++++++++++++++++++++++++++++++++++++++
src/conf/ucm/DB410c/Makefile.am | 4 +
src/conf/ucm/Makefile.am | 2 +-
6 files changed, 230 insertions(+), 1 deletion(-)
create mode 100644 src/conf/ucm/DB410c/DB410c.conf
create mode 100644 src/conf/ucm/DB410c/HDMI
create mode 100644 src/conf/ucm/DB410c/HiFi
create mode 100644 src/conf/ucm/DB410c/Makefile.am
diff --git a/configure.ac b/configure.ac
index f592e8b..014af5f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -675,6 +675,7 @@ AC_OUTPUT(Makefile doc/Makefile doc/pictures/Makefile doc/doxygen.cfg \
src/conf/ucm/broadwell-rt286/Makefile \
src/conf/ucm/VEYRON-I2S/Makefile \
src/conf/ucm/chtrt5645/Makefile \
+ src/conf/ucm/DB410c/Makefile \
src/conf/topology/Makefile \
src/conf/topology/broadwell/Makefile \
modules/Makefile modules/mixer/Makefile modules/mixer/simple/Makefile \
diff --git a/src/conf/ucm/DB410c/DB410c.conf b/src/conf/ucm/DB410c/DB410c.conf
new file mode 100644
index 0000000..590278f
--- /dev/null
+++ b/src/conf/ucm/DB410c/DB410c.conf
@@ -0,0 +1,8 @@
+SectionUseCase."HiFi" {
+ File "HiFi"
+ Comment "Play HiFi quality Music."
+}
+SectionUseCase."HDMI" {
+ File "HDMI"
+ Comment "HDMI output."
+}
diff --git a/src/conf/ucm/DB410c/HDMI b/src/conf/ucm/DB410c/HDMI
new file mode 100644
index 0000000..8112bc0
--- /dev/null
+++ b/src/conf/ucm/DB410c/HDMI
@@ -0,0 +1,31 @@
+# Use case configuration for DB410c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+
+SectionVerb {
+ EnableSequence [
+ ]
+
+ DisableSequence [
+ ]
+ Value {
+ TQ "HiFi"
+ PlaybackPCM "plughw:0,0"
+ }
+}
+
+SectionDevice."HDMI-stereo" {
+ #Name "HDMI-stereo"
+ Comment "HDMI Digital Stereo Output"
+
+ EnableSequence [
+ cdev "hw:0"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
diff --git a/src/conf/ucm/DB410c/HiFi b/src/conf/ucm/DB410c/HiFi
new file mode 100644
index 0000000..f9cbcf0
--- /dev/null
+++ b/src/conf/ucm/DB410c/HiFi
@@ -0,0 +1,185 @@
+# Use case configuration for DB410c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+
+SectionVerb {
+
+ EnableSequence [
+ ]
+
+ DisableSequence [
+ ]
+
+ # ALSA PCM
+ Value {
+ # ALSA PCM device for HiFi
+ PlaybackPCM "plughw:0,1"
+ CapturePCM "plughw:0,2"
+ }
+}
+
+
+SectionDevice."Speaker" {
+ Comment "Speaker playback"
+
+ ConflictingDevice [
+ "Headphones"
+ "Earpiece"
+ ]
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='SPK DAC Switch' 1"
+ cset "name='RX3 MIX1 INP1' RX1"
+ ## gain to 0dB
+ cset "name='RX3 Digital Volume' 128"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='SPK DAC Switch' 0"
+ cset "name='RX3 MIX1 INP1' ZERO"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
+
+
+SectionDevice."Headphones" {
+ Comment "Headphones playback"
+
+ ConflictingDevice [
+ "Speaker"
+ "Earpiece"
+ ]
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='RX1 MIX1 INP1' RX1"
+ cset "name='RX2 MIX1 INP1' RX2"
+ cset "name='RDAC2 MUX' RX2"
+ cset "name='HPHL' 1"
+ cset "name='HPHR' 1"
+ ## gain to 0dB
+ cset "name='RX1 Digital Volume' 128"
+ ## gain to 0dB
+ cset "name='RX2 Digital Volume' 128"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='RX1 Digital Volume' 0"
+ cset "name='RX2 Digital Volume' 0"
+ cset "name='HPHL' 0"
+ cset "name='HPHR' 0"
+ cset "name='RDAC2 MUX' ZERO"
+ cset "name='RX1 MIX1 INP1' ZERO"
+ cset "name='RX2 MIX1 INP1' ZERO"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
+
+SectionDevice."Earpiece" {
+ Comment "Earpiece playback"
+
+ ConflictingDevice [
+ "Speaker"
+ "Headphones"
+ ]
+ EnableSequence [
+ cdev "hw:0"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
+
+SectionDevice."Handset" {
+ Comment "Headset Microphone"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ADC2"
+ cset "name='ADC2 Volume' 8"
+ cset "name='ADC2 MUX' INP2"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='ADC2 MUX' ZERO"
+ cset "name='ADC2 Volume' 0"
+ cset "name='DEC1 MUX' ZERO"
+ ]
+
+ Value {
+ CaptureChannels "2"
+ }
+}
+
+SectionDevice."Primarymic" {
+ Comment "Primary Microphone"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ADC1"
+ cset "name='ADC1 Volume' 8"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ZERO"
+ cset "name='ADC1 Volume' 0"
+ ]
+
+ Value {
+ CaptureChannels "2"
+ }
+}
+
+SectionDevice."Secondarymic" {
+ Comment "Secondary Microphone"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ADC2"
+ cset "name='ADC2 Volume' 8"
+ cset "name='ADC2 MUX' INP2"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ZERO"
+ cset "name='ADC2 Volume' 0"
+ cset "name='ADC2 MUX' ZERO"
+ ]
+
+ Value {
+ CaptureChannels "2"
+ }
+}
+
+SectionDevice."DMIC" {
+ Comment "Digital Microphone"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' DMIC1"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='DEC1 MUX' ZERO"
+ ]
+
+ Value {
+ CaptureChannels "2"
+ }
+}
diff --git a/src/conf/ucm/DB410c/Makefile.am b/src/conf/ucm/DB410c/Makefile.am
new file mode 100644
index 0000000..e10a136
--- /dev/null
+++ b/src/conf/ucm/DB410c/Makefile.am
@@ -0,0 +1,4 @@
+alsaconfigdir = @ALSA_CONFIG_DIR@
+ucmdir = $(alsaconfigdir)/ucm/DB410c
+ucm_DATA = DB410c.conf HDMI HiFi
+EXTRA_DIST = $(ucm_DATA)
diff --git a/src/conf/ucm/Makefile.am b/src/conf/ucm/Makefile.am
index 8865770..7bf432e 100644
--- a/src/conf/ucm/Makefile.am
+++ b/src/conf/ucm/Makefile.am
@@ -1 +1 @@
-SUBDIRS=DAISY-I2S PandaBoard PandaBoardES SDP4430 tegraalc5632 PAZ00 GoogleNyan broadwell-rt286 VEYRON-I2S chtrt5645
+SUBDIRS=DAISY-I2S PandaBoard PandaBoardES SDP4430 tegraalc5632 PAZ00 GoogleNyan broadwell-rt286 VEYRON-I2S chtrt5645 DB410c
--
2.1.4
More information about the Alsa-devel
mailing list