alsa/0004-ucm-Add-ucm-files-for-DB820c-board.patch
Takashi Iwai 31229b2211 Accepting request 689240 from home:tiwai:branches:multimedia:libs
- Backport upstream fixes: PCM sw_params behavior fix, UCM additions and
  corrections, dshare position overflow fix, build fixes for Android:
  0001-pcm-Preserve-period_event-in-snd_pcm_hw_sw_params-ca.patch
  0004-ucm-Add-ucm-files-for-DB820c-board.patch
  0005-ucm-bytcr-PlatformEnableSeq.conf-update-some-comment.patch
  0006-pcm-dshare-Fix-overflow-when-slave_hw_ptr-rolls-over.patch
  0007-test-latency-use-frame-bytes-correctly-in-writebuf.patch
  0008-conf-pcm-dmix-add-CHANNELS-argument.patch
  0009-Android-avoid-using-versionsort.patch
  0010-pcm-add-the-missing-strings.h-include.patch
  0011-alisp-add-the-missing-include.patch
  0012-add-snd_strlcpy-and-use-it-everywhere.patch
  0013-pcm-rate-plugin-fix-signess-in-snd_pcm_rate_avail_up.patch
- Drop -Iinclude/alsa from alsa.pc (bsc#1130333)
  0014-Drop-I-includedir-alsa-from-alsa.pc.patch

OBS-URL: https://build.opensuse.org/request/show/689240
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/alsa?expand=0&rev=245
2019-03-28 07:09:39 +00:00

240 lines
6.6 KiB
Diff

From 7442c8b9be91ef576871eed5efce9499fcdeab4a Mon Sep 17 00:00:00 2001
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Date: Tue, 29 Jan 2019 10:48:28 +0000
Subject: [PATCH 04/14] ucm: Add ucm files for DB820c board
DB820c board is based of MSM8996 Qualcomm SoC, which has support for both
Digital and Analog audio. Digital audio is over HDMI and analog is over
WCD9335 codec via SLIMbus.
Board itself has HDMI port, a 3.5mm audio Jack and an Audio expansion
connector.
This patch adds support for HDMI port and 3.5mm jack.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
configure.ac | 1 +
src/conf/ucm/DB820c/DB820c.conf | 9 ++++
src/conf/ucm/DB820c/HDMI | 37 ++++++++++++++
src/conf/ucm/DB820c/HiFi | 110 ++++++++++++++++++++++++++++++++++++++++
src/conf/ucm/DB820c/Makefile.am | 4 ++
src/conf/ucm/Makefile.am | 1 +
6 files changed, 162 insertions(+)
create mode 100644 src/conf/ucm/DB820c/DB820c.conf
create mode 100644 src/conf/ucm/DB820c/HDMI
create mode 100644 src/conf/ucm/DB820c/HiFi
create mode 100644 src/conf/ucm/DB820c/Makefile.am
diff --git a/configure.ac b/configure.ac
index a0c346ef46e4..e9e1a3698bed 100644
--- a/configure.ac
+++ b/configure.ac
@@ -747,6 +747,7 @@ AC_OUTPUT(Makefile doc/Makefile doc/pictures/Makefile doc/doxygen.cfg \
src/conf/ucm/cube-i1_TF-Defaultstring-CherryTrailCR/Makefile \
src/conf/ucm/DAISY-I2S/Makefile \
src/conf/ucm/DB410c/Makefile \
+ src/conf/ucm/DB820c/Makefile \
src/conf/ucm/Dell-WD15-Dock/Makefile \
src/conf/ucm/GoogleNyan/Makefile \
src/conf/ucm/gpd-win-pocket-rt5645/Makefile \
diff --git a/src/conf/ucm/DB820c/DB820c.conf b/src/conf/ucm/DB820c/DB820c.conf
new file mode 100644
index 000000000000..58b7ff4e098c
--- /dev/null
+++ b/src/conf/ucm/DB820c/DB820c.conf
@@ -0,0 +1,9 @@
+SectionUseCase."HiFi" {
+ File "HiFi"
+ Comment "HiFi quality Music."
+}
+
+SectionUseCase."HDMI" {
+ File "HDMI"
+ Comment "HDMI output."
+}
diff --git a/src/conf/ucm/DB820c/HDMI b/src/conf/ucm/DB820c/HDMI
new file mode 100644
index 000000000000..39b28692dde7
--- /dev/null
+++ b/src/conf/ucm/DB820c/HDMI
@@ -0,0 +1,37 @@
+# Use case configuration for DB820c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+SectionVerb {
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='HDMI Mixer MultiMedia1' 1"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='HDMI Mixer MultiMedia1' 0"
+ ]
+ Value {
+ TQ "HiFi"
+ PlaybackPCM "plughw:0,0"
+ }
+}
+
+SectionDevice."HDMI-stereo" {
+ #Name "HDMI-stereo"
+ Comment "HDMI Digital Stereo Output"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='HDMI Mixer MultiMedia1' 1"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='HDMI Mixer MultiMedia1' 0"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
diff --git a/src/conf/ucm/DB820c/HiFi b/src/conf/ucm/DB820c/HiFi
new file mode 100644
index 000000000000..4457329fe07c
--- /dev/null
+++ b/src/conf/ucm/DB820c/HiFi
@@ -0,0 +1,110 @@
+# Use case configuration for DB820c board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+SectionVerb {
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='SLIM RX0 MUX' ZERO"
+ cset "name='SLIM RX1 MUX' ZERO"
+ cset "name='SLIM RX2 MUX' ZERO"
+ cset "name='SLIM RX3 MUX' ZERO"
+ cset "name='SLIM RX4 MUX' ZERO"
+ cset "name='SLIM RX5 MUX' AIF4_PB"
+ cset "name='SLIM RX6 MUX' AIF4_PB"
+ cset "name='SLIM RX7 MUX' ZERO"
+ cset "name='RX INT1_2 MUX' RX5"
+ cset "name='RX INT2_2 MUX' RX6"
+ ## gain to 0dB
+ cset "name='RX5 Digital Volume' 68"
+ ## gain to 0dB
+ cset "name='RX6 Digital Volume' 68"
+ cset "name='SLIMBUS_6_RX Audio Mixer MultiMedia2' 1"
+ cset "name='MultiMedia3 Mixer SLIMBUS_0_TX' 1"
+ cset "name='RX INT1 DEM MUX' CLSH_DSM_OUT"
+ cset "name='RX INT2 DEM MUX' CLSH_DSM_OUT"
+ cset "name='AIF1_CAP Mixer SLIM TX0' 1"
+ cset "name='SLIM TX0 MUX' DEC0"
+ cset "name='ADC2 Volume' 12"
+ cset "name='ADC MUX0' AMIC"
+ cset "name='AMIC MUX0' ADC2"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='SLIMBUS_6_RX Audio Mixer MultiMedia2' 0"
+ cset "name='MultiMedia3 Mixer SLIMBUS_0_TX' 0"
+ ]
+
+ # ALSA PCM
+ Value {
+ # ALSA PCM device for HiFi
+ PlaybackPCM "plughw:0,1"
+ CapturePCM "plughw:0,2"
+ }
+}
+
+SectionDevice."Headphones" {
+ Comment "Headphones playback"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='SLIM RX0 MUX' ZERO"
+ cset "name='SLIM RX1 MUX' ZERO"
+ cset "name='SLIM RX2 MUX' ZERO"
+ cset "name='SLIM RX3 MUX' ZERO"
+ cset "name='SLIM RX4 MUX' ZERO"
+ cset "name='SLIM RX5 MUX' AIF4_PB"
+ cset "name='SLIM RX6 MUX' AIF4_PB"
+ cset "name='SLIM RX7 MUX' ZERO"
+ cset "name='RX INT1_2 MUX' RX5"
+ cset "name='RX INT2_2 MUX' RX6"
+ ## gain to 0dB
+ cset "name='RX5 Digital Volume' 68"
+ ## gain to 0dB
+ cset "name='RX6 Digital Volume' 68"
+ cset "name='SLIMBUS_6_RX Audio Mixer MultiMedia2' 1"
+ cset "name='RX INT1 DEM MUX' CLSH_DSM_OUT"
+ cset "name='RX INT2 DEM MUX' CLSH_DSM_OUT"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='RX5 Digital Volume' 0"
+ cset "name='RX6 Digital Volume' 0"
+ cset "name='SLIM RX5 MUX' ZERO"
+ cset "name='SLIM RX6 MUX' ZERO"
+ cset "name='SLIMBUS_6_RX Audio Mixer MultiMedia2' 0"
+ ]
+
+ Value {
+ PlaybackChannels "2"
+ }
+}
+
+SectionDevice."Handset" {
+ Comment "Headset Microphone"
+
+ EnableSequence [
+ cdev "hw:0"
+ cset "name='MultiMedia3 Mixer SLIMBUS_0_TX' 1"
+ cset "name='AIF1_CAP Mixer SLIM TX0' 1"
+ cset "name='SLIM TX0 MUX' DEC0"
+ cset "name='ADC2 Volume' 12"
+ cset "name='ADC MUX0' AMIC"
+ cset "name='AMIC MUX0' ADC2"
+ ]
+
+ DisableSequence [
+ cdev "hw:0"
+ cset "name='MultiMedia3 Mixer SLIMBUS_0_TX' 0"
+ cset "name='AIF1_CAP Mixer SLIM TX0' 0"
+ cset "name='AMIC MUX0' ZERO"
+ cset "name='SLIM TX0 MUX' ZERO"
+ cset "name='ADC2 Volume' 0"
+ ]
+
+ Value {
+ CaptureChannels "1"
+ }
+}
diff --git a/src/conf/ucm/DB820c/Makefile.am b/src/conf/ucm/DB820c/Makefile.am
new file mode 100644
index 000000000000..16e985e5c45d
--- /dev/null
+++ b/src/conf/ucm/DB820c/Makefile.am
@@ -0,0 +1,4 @@
+alsaconfigdir = @ALSA_CONFIG_DIR@
+ucmdir = $(alsaconfigdir)/ucm/DB820c
+ucm_DATA = DB820c.conf HDMI HiFi
+EXTRA_DIST = $(ucm_DATA)
diff --git a/src/conf/ucm/Makefile.am b/src/conf/ucm/Makefile.am
index ee850ee62b97..e9f88ed683a2 100644
--- a/src/conf/ucm/Makefile.am
+++ b/src/conf/ucm/Makefile.am
@@ -31,6 +31,7 @@ chtrt5650 \
cube-i1_TF-Defaultstring-CherryTrailCR \
DAISY-I2S \
DB410c \
+DB820c \
Dell-WD15-Dock \
GoogleNyan \
gpd-win-pocket-rt5645 \
--
2.16.4