summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2016-08-08 16:23:10 +0300
committerTakashi Iwai <tiwai@suse.de>2016-08-10 12:11:36 +0200
commitdaafa451587b9e1d018f147885f38290a344a65a (patch)
treecbe180b69609ae783feaa51cab73061918f9b0be
parent1bf144013cffdeb41a5df3a11a8eb2596c5ea2b5 (diff)
downloadalsa-lib-daafa451587b9e1d018f147885f38290a344a65a.tar.gz
ucm: Add ucm files for DB410c board.
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@linaro.org> Signed-off-by: Riku Voipio <riku.voipio@linaro.org> Cc: nicolas.dechesne@linaro.org Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--configure.ac1
-rw-r--r--src/conf/ucm/DB410c/DB410c.conf8
-rw-r--r--src/conf/ucm/DB410c/HDMI31
-rw-r--r--src/conf/ucm/DB410c/HiFi185
-rw-r--r--src/conf/ucm/DB410c/Makefile.am4
-rw-r--r--src/conf/ucm/Makefile.am2
6 files changed, 230 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index f592e8b7..014af5f3 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 00000000..590278fa
--- /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 00000000..8112bc0a
--- /dev/null
+++ b/src/conf/ucm/DB410c/HDMI
@@ -0,0 +1,31 @@
+# Use case configuration for DB410c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla@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 00000000..f9cbcf05
--- /dev/null
+++ b/src/conf/ucm/DB410c/HiFi
@@ -0,0 +1,185 @@
+# Use case configuration for DB410c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla@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 00000000..e10a1363
--- /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 88657708..7bf432e7 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