diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2022-05-23 11:48:21 -0700 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2022-05-23 11:48:21 -0700 |
commit | dee31731c9963a37641044bfd980790446f34fea (patch) | |
tree | 1504022e9089f78ab6f14edec14c656a346db32e | |
parent | d50372e2a55acb4785496d62bc039444c4a9f0cc (diff) | |
parent | 83d426c63346e108a9796ff014500d2efeb04e1f (diff) |
Merge 83d426c63346e108a9796ff014500d2efeb04e1f on remote branch
Change-Id: I746f538b51f2003e0e6a0527544553de6829ba00
-rw-r--r-- | configs/audio_vendor_product.mk | 8 | ||||
-rw-r--r-- | configs/parrot/audio_effects.conf | 360 | ||||
-rw-r--r-- | configs/parrot/audio_effects.xml | 147 | ||||
-rw-r--r-- | configs/parrot/audio_policy_configuration.xml | 483 | ||||
-rw-r--r-- | configs/parrot/card-defs.xml | 384 | ||||
-rw-r--r-- | configs/parrot/microphone_characteristics.xml | 117 | ||||
-rw-r--r-- | configs/parrot/mixer_paths_parrot_idp.xml | 1083 | ||||
-rw-r--r-- | configs/parrot/mixer_paths_parrot_idp_sku1.xml | 1083 | ||||
-rw-r--r-- | configs/parrot/mixer_paths_parrot_qrd.xml | 1152 | ||||
-rw-r--r-- | configs/parrot/mixer_paths_parrot_qrd_sku1.xml | 1155 | ||||
-rw-r--r-- | configs/parrot/parrot.mk | 613 | ||||
-rwxr-xr-x | configs/taro/mixer_paths_diwali_parrot_qrd.xml | 1152 | ||||
-rw-r--r-- | configs/taro/taro.mk | 7 | ||||
-rw-r--r-- | hal/AudioStream.cpp | 31 |
14 files changed, 7757 insertions, 18 deletions
diff --git a/configs/audio_vendor_product.mk b/configs/audio_vendor_product.mk index 887a5a06..d47afc13 100644 --- a/configs/audio_vendor_product.mk +++ b/configs/audio_vendor_product.mk @@ -38,21 +38,13 @@ AUDIO_USE_STUB_HAL := true TARGET_USES_AOSP_FOR_AUDIO := true -include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/default.mk else -ifeq ($(TARGET_BOARD_PLATFORM), parrot) --include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/taro/taro.mk -else # Audio hal configuration file -include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/$(TARGET_BOARD_PLATFORM)/$(TARGET_BOARD_PLATFORM).mk endif -endif -else -ifeq ($(TARGET_BOARD_PLATFORM), parrot) --include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/taro/taro.mk else # Audio hal configuration file -include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/$(TARGET_BOARD_PLATFORM)/$(TARGET_BOARD_PLATFORM).mk endif -endif ifeq ($(AUDIO_USE_STUB_HAL), true) PRODUCT_COPY_FILES += \ diff --git a/configs/parrot/audio_effects.conf b/configs/parrot/audio_effects.conf new file mode 100644 index 00000000..7dce3ddb --- /dev/null +++ b/configs/parrot/audio_effects.conf @@ -0,0 +1,360 @@ +# List of effect libraries to load. Each library element must contain a "path" element +# giving the full path of the library .so file. +# libraries { +# <lib name> { +# path <lib path> +# } +# } +libraries { + bundle { + path /vendor/lib/soundfx/libbundlewrapper.so + } + reverb { + path /vendor/lib/soundfx/libreverbwrapper.so + } + qcbassboost { + path /vendor/lib/soundfx/libqcbassboost.so + } + qcvirt { + path /vendor/lib/soundfx/libqcvirt.so + } + qcreverb { + path /vendor/lib/soundfx/libqcreverb.so + } + visualizer_sw { + path /vendor/lib/soundfx/libvisualizer.so + } + visualizer_hw { + path /vendor/lib/soundfx/libqcomvisualizer.so + } + downmix { + path /vendor/lib/soundfx/libdownmix.so + } + loudness_enhancer { + path /vendor/lib/soundfx/libldnhncr.so + } + dynamics_processing { + path /vendor/lib/soundfx/libdynproc.so + } + proxy { + path /vendor/lib/soundfx/libeffectproxy.so + } + offload_bundle { + path /vendor/lib/soundfx/libqcompostprocbundle.so + } + audio_pre_processing { + path /vendor/lib/soundfx/libqcomvoiceprocessing.so + } + volume_listener { + path /vendor/lib/soundfx/libvolumelistener.so + } + audiosphere { + path /vendor/lib/soundfx/libasphere.so + } +} + +# Default pre-processing library. Add to audio_effect.conf "libraries" section if +# audio HAL implements support for default software audio pre-processing effects +# +# pre_processing { +# path /vendor/lib/soundfx/libaudiopreprocessing.so +# } + +# list of effects to load. Each effect element must contain a "library" and a "uuid" element. +# The value of the "library" element must correspond to the name of one library element in the +# "libraries" element. +# The name of the effect element is indicative, only the value of the "uuid" element +# designates the effect. +# The uuid is the implementation specific UUID as specified by the effect vendor. This is not the +# generic effect type UUID. +# effects { +# <fx name> { +# library <lib name> +# uuid <effect uuid> +# } +# ... +# } + +effects { + +# additions for the proxy implementation +# Proxy implementation + #effectname { + #library proxy + #uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + + # SW implemetation of the effect. Added as a node under the proxy to + # indicate this as a sub effect. + #libsw { + #library libSW + #uuid yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy + #} End of SW effect + + # HW implementation of the effect. Added as a node under the proxy to + # indicate this as a sub effect. + #libhw { + #library libHW + #uuid zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz + #}End of HW effect + #} End of effect proxy + + bassboost { + library proxy + uuid 14804144-a5ee-4d24-aa88-0002a5d5c51b + + libsw { + library qcbassboost + uuid 23aca180-44bd-11e2-bcfd-0800200c9a66 + } + + libhw { + library offload_bundle + uuid 2c4a8c24-1581-487f-94f6-0002a5d5c51b + } + } + virtualizer { + library proxy + uuid d3467faa-acc7-4d34-acaf-0002a5d5c51b + + libsw { + library qcvirt + uuid e6c98a16-22a3-11e2-b87b-f23c91aec05e + } + + libhw { + library offload_bundle + uuid 509a4498-561a-4bea-b3b1-0002a5d5c51b + } + } + equalizer { + library proxy + uuid c8e70ecd-48ca-456e-8a4f-0002a5d5c51b + + libsw { + library bundle + uuid ce772f20-847d-11df-bb17-0002a5d5c51b + } + + libhw { + library offload_bundle + uuid a0dac280-401c-11e3-9379-0002a5d5c51b + } + } + volume { + library bundle + uuid 119341a0-8469-11df-81f9-0002a5d5c51b + } + reverb_env_aux { + library proxy + uuid 48404ac9-d202-4ccc-bf84-0002a5d5c51b + + libsw { + library qcreverb + uuid a8c1e5f3-293d-43cd-95ec-d5e26c02e217 + } + + libhw { + library offload_bundle + uuid 79a18026-18fd-4185-8233-0002a5d5c51b + } + } + reverb_env_ins { + library proxy + uuid b707403a-a1c1-4291-9573-0002a5d5c51b + + libsw { + library qcreverb + uuid 791fff8b-8129-4655-83a4-59bc61034c3a + } + + libhw { + library offload_bundle + uuid eb64ea04-973b-43d2-8f5e-0002a5d5c51b + } + } + reverb_pre_aux { + library proxy + uuid 1b78f587-6d1c-422e-8b84-0002a5d5c51b + + libsw { + library qcreverb + uuid 53ef1db5-c0c0-445b-b060-e34d20ebb70a + } + + libhw { + library offload_bundle + uuid 6987be09-b142-4b41-9056-0002a5d5c51b + } + } + reverb_pre_ins { + library proxy + uuid f3e178d2-ebcb-408e-8357-0002a5d5c51b + + libsw { + library qcreverb + uuid b08a0e38-22a5-11e2-b87b-f23c91aec05e + } + + libhw { + library offload_bundle + uuid aa2bebf6-47cf-4613-9bca-0002a5d5c51b + } + } + visualizer { + library proxy + uuid 1d0a1a53-7d5d-48f2-8e71-27fbd10d842c + + libsw { + library visualizer_sw + uuid d069d9e0-8329-11df-9168-0002a5d5c51b + } + + libhw { + library visualizer_hw + uuid 7a8044a0-1a71-11e3-a184-0002a5d5c51b + } + } + downmix { + library downmix + uuid 93f04452-e4fe-41cc-91f9-e475b6d1d69f + } + hw_acc { + library offload_bundle + uuid 7d1580bd-297f-4683-9239-e475b6d1d69f + } + loudness_enhancer { + library loudness_enhancer + uuid fa415329-2034-4bea-b5dc-5b381c8d1e2c + } + dynamics_processing { + library dynamics_processing + uuid e0e6539b-1781-7261-676f-6d7573696340 + } + aec { + library audio_pre_processing + uuid 0f8d0d2a-59e5-45fe-b6e4-248c8a799109 + } + ns { + library audio_pre_processing + uuid 1d97bb0b-9e2f-4403-9ae3-58c2554306f8 + } + music_helper { + library volume_listener + uuid 08b8b058-0590-11e5-ac71-0025b32654a0 + } + ring_helper { + library volume_listener + uuid 0956df94-0590-11e5-bdbe-0025b32654a0 + } + alarm_helper { + library volume_listener + uuid 09f303e2-0590-11e5-8fdb-0025b32654a0 + } + # voice_helper is called when stream type is voice_call in VoIP usecase + voice_helper { + library volume_listener + uuid 0ace5c08-0590-11e5-ae9e-0025b32654a0 + } + notification_helper { + library volume_listener + uuid 0b776dde-0590-11e5-81ba-0025b32654a0 + } + audiosphere { + library audiosphere + uuid 184e62ab-2d19-4364-9d1b-c0a40733866c + } +} + +# additional effect from vendor +# UUID generated using version 1 + +output_session_processing { + music { + music_helper { + } + } + ring { + ring_helper { + } + } + alarm { + alarm_helper { + } + } + # stream type voice_call is used for VoIP call + voice_call { + voice_helper { + } + } + notification { + notification_helper { + } + } +} + +# Added aec, ns effects for voice_communication, which are supported by the board + +pre_processing { + voice_communication { + aec { + } + ns { + } + } +} + +# Default pre-processing effects. Add to audio_effect.conf "effects" section if +# audio HAL implements support for them. +# +# agc { +# library pre_processing +# uuid aa8130e0-66fc-11e0-bad0-0002a5d5c51b +# } +# aec { +# library pre_processing +# uuid bb392ec0-8d4d-11e0-a896-0002a5d5c51b +# } +# ns { +# library pre_processing +# uuid c06c8400-8e06-11e0-9cb6-0002a5d5c51b +# } + +# Audio preprocessor configurations. +# The pre processor configuration consists in a list of elements each describing +# pre processor settings for a given input source. Valid input source names are: +# "mic", "camcorder", "voice_recognition", "voice_communication" +# Each input source element contains a list of effects elements. The name of the effect +# element must be the name of one of the effects in the "effects" list of the file. +# Each effect element may optionally contain a list of parameters and their +# default value to apply when the pre processor effect is created. +# A parameter is defined by a "param" element and a "value" element. Each of these elements +# consists in one or more elements specifying a type followed by a value. +# The types defined are: "int", "short", "float", "bool" and "string" +# When both "param" and "value" are a single int, a simple form is allowed where just +# the param and value pair is present in the parameter description +# pre_processing { +# <input source name> { +# <fx name> { +# <param 1 name> { +# param { +# int|short|float|bool|string <value> +# [ int|short|float|bool|string <value> ] +# ... +# } +# value { +# int|short|float|bool|string <value> +# [ int|short|float|bool|string <value> ] +# ... +# } +# } +# <param 2 name > {<param> <value>} +# ... +# } +# ... +# } +# ... +# } + +# +# TODO: add default audio pre processor configurations after debug and tuning phase +# diff --git a/configs/parrot/audio_effects.xml b/configs/parrot/audio_effects.xml new file mode 100644 index 00000000..afb1cdba --- /dev/null +++ b/configs/parrot/audio_effects.xml @@ -0,0 +1,147 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!--- Copyright (c) 2018-2019, 2021 The Linux Foundation. All rights reserved. --> +<!--- --> +<!--- Redistribution and use in source and binary forms, with or without --> +<!--- modification, are permitted provided that the following conditions are --> +<!--- met: --> +<!--- * Redistributions of source code must retain the above copyright --> +<!--- notice, this list of conditions and the following disclaimer. --> +<!--- * Redistributions in binary form must reproduce the above --> +<!--- copyright notice, this list of conditions and the following --> +<!--- disclaimer in the documentation and/or other materials provided --> +<!--- with the distribution. --> +<!--- * Neither the name of The Linux Foundation nor the names of its --> +<!--- contributors may be used to endorse or promote products derived --> +<!--- from this software without specific prior written permission. --> +<!--- --> +<!--- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!--- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!--- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!--- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!--- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!--- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!--- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!--- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!--- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE --> +<!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> + +<!-- Changes from Qualcomm Innovation Center are provided under the following license: --> +<!--- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0"> + <libraries> + <library name="bundle" path="libbundlewrapper.so"/> + <library name="reverb" path="libreverbwrapper.so"/> + <library name="visualizer_sw" path="libvisualizer.so"/> + <library name="visualizer_hw" path="libqcomvisualizer.so"/> + <library name="downmix" path="libdownmix.so"/> + <library name="loudness_enhancer" path="libldnhncr.so"/> + <library name="dynamics_processing" path="libdynproc.so"/> + <library name="proxy" path="libeffectproxy.so"/> + <library name="offload_bundle" path="libqcompostprocbundle.so"/> + <library name="audio_pre_processing" path="libqcomvoiceprocessing.so"/> + <library name="volume_listener" path="libvolumelistener.so"/> + <library name="audiosphere" path="libasphere.so"/> + </libraries> + <effects> + <effectProxy name="bassboost" library="proxy" uuid="14804144-a5ee-4d24-aa88-0002a5d5c51b"> + <libsw library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="2c4a8c24-1581-487f-94f6-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="virtualizer" library="proxy" uuid="d3467faa-acc7-4d34-acaf-0002a5d5c51b"> + <libsw library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="509a4498-561a-4bea-b3b1-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="equalizer" library="proxy" uuid="c8e70ecd-48ca-456e-8a4f-0002a5d5c51b"> + <libsw library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="a0dac280-401c-11e3-9379-0002a5d5c51b"/> + </effectProxy> + <effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/> + <effectProxy name="reverb_env_aux" library="proxy" uuid="48404ac9-d202-4ccc-bf84-0002a5d5c51b"> + <libsw library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="79a18026-18fd-4185-8233-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="reverb_env_ins" library="proxy" uuid="b707403a-a1c1-4291-9573-0002a5d5c51b"> + <libsw library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="eb64ea04-973b-43d2-8f5e-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="reverb_pre_aux" library="proxy" uuid="1b78f587-6d1c-422e-8b84-0002a5d5c51b"> + <libsw library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="6987be09-b142-4b41-9056-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="reverb_pre_ins" library="proxy" uuid="f3e178d2-ebcb-408e-8357-0002a5d5c51b"> + <libsw library="reverb" uuid="172cdf00-a3bc-11df-a72f-0002a5d5c51b"/> + <libhw library="offload_bundle" uuid="aa2bebf6-47cf-4613-9bca-0002a5d5c51b"/> + </effectProxy> + <effectProxy name="visualizer" library="proxy" uuid="1d0a1a53-7d5d-48f2-8e71-27fbd10d842c"> + <libsw library="visualizer_sw" uuid="d069d9e0-8329-11df-9168-0002a5d5c51b"/> + <libhw library="visualizer_hw" uuid="7a8044a0-1a71-11e3-a184-0002a5d5c51b"/> + </effectProxy> + <effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/> + <effect name="hw_acc" library="offload_bundle" uuid="7d1580bd-297f-4683-9239-e475b6d1d69f"/> + <effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/> + <effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/> + <effect name="aec" library="audio_pre_processing" uuid="0f8d0d2a-59e5-45fe-b6e4-248c8a799109"/> + <effect name="ns" library="audio_pre_processing" uuid="1d97bb0b-9e2f-4403-9ae3-58c2554306f8"/> + <effect name="music_helper" library="volume_listener" uuid="08b8b058-0590-11e5-ac71-0025b32654a0"/> + <effect name="ring_helper" library="volume_listener" uuid="0956df94-0590-11e5-bdbe-0025b32654a0"/> + <effect name="alarm_helper" library="volume_listener" uuid="09f303e2-0590-11e5-8fdb-0025b32654a0"/> + <effect name="voice_helper" library="volume_listener" uuid="0ace5c08-0590-11e5-ae9e-0025b32654a0"/> + <effect name="notification_helper" library="volume_listener" uuid="0b776dde-0590-11e5-81ba-0025b32654a0"/> + <effect name="audiosphere" library="audiosphere" uuid="184e62ab-2d19-4364-9d1b-c0a40733866c"/> + </effects> + <postprocess> + <stream type="music"> + <apply effect="music_helper"/> + </stream> + <stream type="ring"> + <apply effect="ring_helper"/> + </stream> + <stream type="alarm"> + <apply effect="alarm_helper"/> + </stream> + <stream type="voice_call"> + <apply effect="voice_helper"/> + </stream> + <stream type="notification"> + <apply effect="notification_helper"/> + </stream> + </postprocess> + <preprocess> + <stream type="voice_communication"> + <apply effect="aec"/> + <apply effect="ns"/> + </stream> + </preprocess> +</audio_effects_conf> diff --git a/configs/parrot/audio_policy_configuration.xml b/configs/parrot/audio_policy_configuration.xml new file mode 100644 index 00000000..5b25b0ae --- /dev/null +++ b/configs/parrot/audio_policy_configuration.xml @@ -0,0 +1,483 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<!-- Copyright (c) 2016-2021, The Linux Foundation. All rights reserved + Not a Contribution. +--> +<!-- Copyright (C) 2015 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- +Changes from Qualcomm Innovation Center are provided under the following license: + +Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted (subject to the limitations in the +disclaimer below) provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE +GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT +HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + +<audioPolicyConfiguration version="7.0" xmlns:xi="http://www.w3.org/2001/XInclude"> + <!-- version section contains a “version” tag in the form “major.minor” e.g version=”1.0” --> + + <!-- Global configuration Decalaration --> + <globalConfiguration speaker_drc_enabled="true" call_screen_mode_supported="true"/> + + + <!-- Modules section: + There is one section per audio HW module present on the platform. + Each module section will contains two mandatory tags for audio HAL “halVersion” and “name”. + The module names are the same as in current .conf file: + “primary”, “A2DP”, “remote_submix”, “USB” + Each module will contain the following sections: + “devicePorts”: a list of device descriptors for all input and output devices accessible via this + module. + This contains both permanently attached devices and removable devices. + “mixPorts”: listing all output and input streams exposed by the audio HAL + “routes”: list of possible connections between input and output devices or between stream and + devices. + "route": is defined by an attribute: + -"type": <mux|mix> means all sources are mutual exclusive (mux) or can be mixed (mix) + -"sink": the sink involved in this route + -"sources": all the sources than can be connected to the sink via vis route + “attachedDevices”: permanently attached devices. + The attachedDevices section is a list of devices names. The names correspond to device names + defined in <devicePorts> section. + “defaultOutputDevice”: device to be used by default when no policy rule applies + --> + <modules> + <!-- Primary Audio HAL --> + <module name="primary" halVersion="2.0"> + <attachedDevices> + <item>Earpiece</item> + <item>Speaker</item> + <item>Telephony Tx</item> + <item>Built-In Mic</item> + <item>Built-In Back Mic</item> + <item>FM Tuner</item> + <item>Telephony Rx</item> + </attachedDevices> + <defaultOutputDevice>Speaker</defaultOutputDevice> + <mixPorts> + <mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_PRIMARY"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + <mixPort name="raw" role="source" + flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_RAW"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + <mixPort name="haptics output" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_A"/> + </mixPort> + <mixPort name="deep_buffer" role="source" + flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + <mixPort name="hifi_playback" role="source" /> + <mixPort name="direct_pcm" role="source" + flags="AUDIO_OUTPUT_FLAG_DIRECT"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000 352800 384000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000 352800 384000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_PCM_32_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000 352800 384000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + </mixPort> + <mixPort name="compressed_offload" role="source" + flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD AUDIO_OUTPUT_FLAG_NON_BLOCKING AUDIO_OUTPUT_FLAG_GAPLESS_OFFLOAD"> + <profile name="" format="AUDIO_FORMAT_MP3" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_FLAC" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_ALAC" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_APE" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_LC" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_HE_V1" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_HE_V2" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_DTS" + samplingRates="32000 44100 48000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1"/> + <profile name="" format="AUDIO_FORMAT_DTS_HD" + samplingRates="32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_WMA" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_WMA_PRO" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_2POINT1 AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_PENTA AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_6POINT1 AUDIO_CHANNEL_OUT_7POINT1"/> + <profile name="" format="AUDIO_FORMAT_VORBIS" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000 128000 176400 192000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_ADTS_LC" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_ADTS_HE_V1" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + <profile name="" format="AUDIO_FORMAT_AAC_ADTS_HE_V2" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 64000 88200 96000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/> + </mixPort> + <mixPort name="voice_tx" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 48000" channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + <mixPort name="voip_rx" role="source" + flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_VOIP_RX"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 32000 48000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/> + </mixPort> + <mixPort name="incall_music_uplink" role="source" + flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 48000" + channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + + <mixPort name="primary input" role="sink" maxOpenCount="2" maxActiveCount="2"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK"/> + </mixPort> + <mixPort name="fast input" role="sink" + flags="AUDIO_INPUT_FLAG_FAST"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK"/> + </mixPort> + <mixPort name="quad mic" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" + channelMasks="AUDIO_CHANNEL_INDEX_MASK_4"/> + </mixPort> + <mixPort name="voip_tx" role="sink" + flags="AUDIO_INPUT_FLAG_VOIP_TX"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 32000 48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/> + </mixPort> + <mixPort name="usb_surround_sound" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 88200 96000 176400 192000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK AUDIO_CHANNEL_INDEX_MASK_3 AUDIO_CHANNEL_INDEX_MASK_4 AUDIO_CHANNEL_IN_5POINT1 AUDIO_CHANNEL_INDEX_MASK_6 AUDIO_CHANNEL_INDEX_MASK_8"/> + <profile name="" format="AUDIO_FORMAT_PCM_32_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 88200 96000 176400 192000" + channelMasks="AUDIO_CHANNEL_IN_5POINT1 AUDIO_CHANNEL_INDEX_MASK_6 AUDIO_CHANNEL_INDEX_MASK_8"/> + <profile name="" format="AUDIO_FORMAT_PCM_FLOAT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 88200 96000 176400 192000" + channelMasks="AUDIO_CHANNEL_IN_5POINT1 AUDIO_CHANNEL_INDEX_MASK_6 AUDIO_CHANNEL_INDEX_MASK_8"/> + </mixPort> + <mixPort name="record_24" role="sink" maxOpenCount="2" maxActiveCount="2"> + <profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 96000 192000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK AUDIO_CHANNEL_INDEX_MASK_3 AUDIO_CHANNEL_INDEX_MASK_4"/> + <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 96000 192000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK AUDIO_CHANNEL_INDEX_MASK_3 AUDIO_CHANNEL_INDEX_MASK_4"/> + <profile name="" format="AUDIO_FORMAT_PCM_FLOAT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000 96000 192000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK AUDIO_CHANNEL_INDEX_MASK_3 AUDIO_CHANNEL_INDEX_MASK_4"/> + </mixPort> + <mixPort name="voice_rx" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 48000" channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/> + </mixPort> + <mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK AUDIO_CHANNEL_INDEX_MASK_3"/> + </mixPort> + <mixPort name="hifi_input" role="sink" /> + </mixPorts> + + <devicePorts> + <!-- Output devices declaration, i.e. Sink DEVICE PORT --> + <devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/> + </devicePort> + <devicePort tagName="Speaker" role="sink" type="AUDIO_DEVICE_OUT_SPEAKER" address=""> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="Line" type="AUDIO_DEVICE_OUT_LINE" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/> + </devicePort> + <devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/> + </devicePort> + <devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/> + </devicePort> + <devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="HDMI" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 16000 22050 32000 44100 48000 64000 88200 96000 128000 176400 192000"/> + </devicePort> + <devicePort tagName="Proxy" type="AUDIO_DEVICE_OUT_PROXY" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 16000 22050 32000 44100 48000 64000 88200 96000 128000 176400 192000"/> + </devicePort> + <devicePort tagName="FM" type="AUDIO_DEVICE_OUT_FM" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_MONO AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink" + encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_LDAC AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE AUDIO_FORMAT_APTX_TWSP AUDIO_FORMAT_LC3"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink" + encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_LDAC AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE AUDIO_FORMAT_APTX_TWSP AUDIO_FORMAT_LC3"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink" + encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_LDAC AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE AUDIO_FORMAT_APTX_TWSP AUDIO_FORMAT_LC3"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + <devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100 48000 64000 88200 96000 128000 176400 192000"/> + </devicePort> + <devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100 48000 64000 88200 96000 128000 176400 192000"/> + </devicePort> + + <!-- Input devices declaration, i.e. Source DEVICE PORT --> + <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK"/> + </devicePort> + <devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK"/> + </devicePort> + <devicePort tagName="FM Tuner" type="AUDIO_DEVICE_IN_FM_TUNER" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/> + </devicePort> + <devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000" + channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_IN_FRONT_BACK"/> + </devicePort> + <devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_IN_MONO"/> + </devicePort> + <devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="8000 16000 48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/> + </devicePort> + <devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source"> + </devicePort> + <devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source"> + </devicePort> + <devicePort tagName="A2DP In" type="AUDIO_DEVICE_IN_BLUETOOTH_A2DP" role="source" + encodedFormats="AUDIO_FORMAT_LC3"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/> + </devicePort> + </devicePorts> + <!-- route declaration, i.e. list all available sources for a given sink --> + <routes> + <route type="mix" sink="Earpiece" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,haptics output"/> + <route type="mix" sink="Speaker" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,haptics output"/> + <route type="mix" sink="Wired Headset" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,haptics output"/> + <route type="mix" sink="Wired Headphones" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,haptics output"/> + <route type="mix" sink="Line" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,haptics output"/> + <route type="mix" sink="HDMI" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="Proxy" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,haptics output"/> + <route type="mix" sink="FM" + sources="primary output"/> + <route type="mix" sink="BT SCO" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="BT SCO Headset" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="BT SCO Car Kit" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="USB Device Out" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,hifi_playback,haptics output"/> + <route type="mix" sink="USB Headset Out" + sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out,hifi_playback,haptics output"/> + <route type="mix" sink="Telephony Tx" + sources="voice_tx,incall_music_uplink"/> + <route type="mix" sink="voice_rx" + sources="Telephony Rx"/> + <route type="mix" sink="primary input" + sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,FM Tuner,Telephony Rx,A2DP In"/> + <route type="mix" sink="usb_surround_sound" + sources="USB Device In,USB Headset In"/> + <route type="mix" sink="fast input" + sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In,Wired Headset Mic"/> + <route type="mix" sink="quad mic" + sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In,Wired Headset Mic"/> + <route type="mix" sink="voip_tx" + sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In,Wired Headset Mic"/> + <route type="mix" sink="record_24" + sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,A2DP In"/> + <route type="mix" sink="mmap_no_irq_in" + sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/> + <route type="mix" sink="BT A2DP Out" + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="BT A2DP Headphones" + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="BT A2DP Speaker" + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,haptics output"/> + <route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" /> + </routes> + + </module> + + <!-- A2DP Audio HAL --> + <!-- <module name="a2dp" halVersion="2.0"> + <mixPorts> + <mixPort name="a2dp input" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/> + </mixPort> + </mixPorts> + + <devicePorts> + <devicePort tagName="BT A2DP In" type="AUDIO_DEVICE_IN_BLUETOOTH_A2DP" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/> + </devicePort> + </devicePorts> + + <routes> + <route type="mix" sink="a2dp input" + sources="BT A2DP In"/> + </routes> + </module> --> + + <!-- Usb Audio HAL --> + <module name="usb" halVersion="2.0"> + <mixPorts> + <mixPort name="usb_accessory output" role="source"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> + </mixPorts> + <devicePorts> + <devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink"> + <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" + samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </devicePort> + </devicePorts> + <routes> + <route type="mix" sink="USB Host Out" + sources="usb_accessory output"/> + </routes> + </module> + + <!-- Remote Submix Audio HAL --> + <xi:include href="/vendor/etc/r_submix_audio_policy_configuration.xml"/> + + <!-- Bluetooth Audio HAL for hearing aid --> + <xi:include href="/vendor/etc/bluetooth_qti_hearing_aid_audio_policy_configuration.xml"/> + + </modules> + <!-- End of Modules section --> + + <!-- Volume section --> + + <xi:include href="/vendor/etc/audio_policy_volumes.xml"/> + <xi:include href="/vendor/etc/default_volume_tables.xml"/> + + <!-- End of Volume section --> + +</audioPolicyConfiguration> diff --git a/configs/parrot/card-defs.xml b/configs/parrot/card-defs.xml new file mode 100644 index 00000000..6fb95995 --- /dev/null +++ b/configs/parrot/card-defs.xml @@ -0,0 +1,384 @@ +<!-- Copyright (c) 2019,2021 The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> + +<!-- Changes from Qualcomm Innovation Center are provided under the following license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<defs> +<card> + <id>100</id> + <name>waipiovirtualsndcard</name> + + <pcm-device> + <id>100</id> + <name>PCM100</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>101</id> + <name>PCM101</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>102</id> + <name>PCM102</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>103</id> + <name>PCM103</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>104</id> + <name>PCM104</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <compress-device> + <id>105</id> + <name>COMPRESS105</name> + <compress_plugin> + <so-name>libagm_compress_plugin.so</so-name> + </compress_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>0</session_mode> + </props> + </compress-device> + + <pcm-device> + <id>106</id> + <name>VOICEMMODE1p</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>107</id> + <name>VOICEMMODE2p</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + <pcm-device> + <id>108</id> + <name>VOICEMMODE1c</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>109</id> + <name>VOICEMMODE2c</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>110</id> + <name>PCM110</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>111</id> + <name>PCM111</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>112</id> + <name>PCM112</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>113</id> + <name>PCM113</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>2</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>114</id> + <name>PCM114</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>2</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>115</id> + <name>PCM115</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>0</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>116</id> + <name>PCM116</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <capture>1</capture> + <session_mode>3</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>117</id> + <name>PCM117</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + </props> + </pcm-device> + + <pcm-device> + <id>118</id> + <name>PCM118</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>119</id> + <name>PCM119</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>120</id> + <name>PCM120</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>121</id> + <name>PCM121</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>122</id> + <name>ExtEC122</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>0</playback> + <capture>1</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <pcm-device> + <id>123</id> + <name>PCM123</name> + <pcm_plugin> + <so-name>libagm_pcm_plugin.so</so-name> + </pcm_plugin> + <props> + <playback>1</playback> + <capture>0</capture> + <session_mode>1</session_mode> + </props> + </pcm-device> + + <mixer> + <id>1</id> + <name>agm_mixer</name> + <mixer_plugin> + <so-name>libagm_mixer_plugin.so</so-name> + </mixer_plugin> + </mixer> + +</card> +</defs> diff --git a/configs/parrot/microphone_characteristics.xml b/configs/parrot/microphone_characteristics.xml new file mode 100644 index 00000000..f5f68aad --- /dev/null +++ b/configs/parrot/microphone_characteristics.xml @@ -0,0 +1,117 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2014, 2016-2018, 2021. The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> + +<!-- Changes from Qualcomm Innovation Center are provided under the following license: --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<microphone_characteristics_and_channel_maps> + <microphone_characteristics> + <microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY" + group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93" + frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00" + responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89" + sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" /> + <microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY" + group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92" + frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00" + responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18" + sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" /> + <microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="" location="AUDIO_MICROPHONE_LOCATION_MAINBODY" + group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92" + frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00" + responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75" + sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" /> + <microphone valid_mask="31" device_id="builtin_mic_4" type="AUDIO_DEVICE_IN_BACK_MIC" address="" location="AUDIO_MICROPHONE_LOCATION_MAINBODY" + group="0" index_in_the_group="3" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92" + frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00" + responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18" + sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" /> + </microphone_characteristics> + <snd_devices> + <input_snd_device> + <input_snd_device_mic_mapping> + <snd_dev in_snd_device="PAL_DEVICE_IN_HANDSET_MIC"> + <mic_info mic_device_id="builtin_mic_1" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + </snd_dev> + <snd_dev in_snd_device="PAL_DEVICE_IN_SPEAKER_MIC"> + <mic_info mic_device_id="builtin_mic_1" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_2" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + </snd_dev> + <snd_dev in_snd_device="PAL_DEVICE_IN_HANDSET_VA_MIC"> + <mic_info mic_device_id="builtin_mic_1" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_2" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_3" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + </snd_dev> + <snd_dev in_snd_device="PAL_DEVICE_IN_ULTRASOUND_MIC"> + <mic_info mic_device_id="builtin_mic_1" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_2" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_3" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + <mic_info mic_device_id="builtin_mic_4" + channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/> + </snd_dev> + </input_snd_device_mic_mapping> + </input_snd_device> + </snd_devices> +</microphone_characteristics_and_channel_maps> diff --git a/configs/parrot/mixer_paths_parrot_idp.xml b/configs/parrot/mixer_paths_parrot_idp.xml new file mode 100644 index 00000000..db8a459d --- /dev/null +++ b/configs/parrot/mixer_paths_parrot_idp.xml @@ -0,0 +1,1083 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> + +<!-- Changes from Qualcomm Innovation Center are provided under the following license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- These are the initial mixer settings --> + + <!-- WSA controls --> + <ctl name="WSA RX0 MUX" value="ZERO" /> + <ctl name="WSA RX1 MUX" value="ZERO" /> + <ctl name="WSA_RX0 INP0" value="ZERO" /> + <ctl name="WSA_RX1 INP0" value="ZERO" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="0" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="0" /> + <ctl name="SpkrLeft COMP Switch" value="0" /> + <ctl name="SpkrRight COMP Switch" value="0" /> + <ctl name="SpkrLeft VISENSE Switch" value="0" /> + <ctl name="SpkrRight VISENSE Switch" value="0" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="0" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="0" /> + + <!-- RX Controls --> + <ctl name="RX_MACRO RX0 MUX" value="ZERO" /> + <ctl name="RX_MACRO RX1 MUX" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT0 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="0" /> + <ctl name="RX_COMP2 Switch" value="0" /> + <ctl name="HPHL_COMP Switch" value="0" /> + <ctl name="HPHR_COMP Switch" value="0" /> + <ctl name="EAR_RDAC Switch" value="0" /> + <ctl name="HPHL_RDAC Switch" value="0" /> + <ctl name="HPHR_RDAC Switch" value="0" /> + <ctl name="AUX_RDAC Switch" value="0" /> + <ctl name="RX_FIR Filter" value="OFF" /> + <ctl name="RX_EAR Mode" value="OFF" /> + + <!-- TX Controls --> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="ZERO" /> + <ctl name="VA DMIC MUX1" value="ZERO" /> + <ctl name="VA DMIC MUX2" value="ZERO" /> + <ctl name="VA DMIC MUX3" value="ZERO" /> + <ctl name="VA SMIC MUX0" value="ZERO" /> + <ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="LPI Enable" value="0" /> + <ctl name="ADC1_MIXER Switch" value="0" /> + <ctl name="ADC2_MIXER Switch" value="0" /> + <ctl name="ADC3_MIXER Switch" value="0" /> + <ctl name="ADC4_MIXER Switch" value="0" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="DEC0_BCS Switch" value="0" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="VA_AMIC2_MIXER Switch" value="0" /> + <ctl name="AMIC2_MIXER Switch" value="0" /> + + <ctl name="TX_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC7" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC7" value="0" /> + <ctl name="TX DEC0 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX0" value="ZERO" /> + <ctl name="TX SMIC MUX0" value="ZERO" /> + <ctl name="TX DEC1 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX1" value="ZERO" /> + <ctl name="TX SMIC MUX1" value="ZERO" /> + <ctl name="TX DEC2 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX2" value="ZERO" /> + <ctl name="TX SMIC MUX2" value="ZERO" /> + <ctl name="TX DEC3 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX3" value="ZERO" /> + <ctl name="TX SMIC MUX3" value="ZERO" /> + <ctl name="TX DEC4 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX4" value="ZERO" /> + <ctl name="TX SMIC MUX4" value="ZERO" /> + <ctl name="TX DEC5 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX5" value="ZERO" /> + <ctl name="TX SMIC MUX5" value="ZERO" /> + <ctl name="TX DEC6 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX6" value="ZERO" /> + <ctl name="TX SMIC MUX6" value="ZERO" /> + <ctl name="TX DEC7 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX7" value="ZERO" /> + <ctl name="TX SMIC MUX7" value="ZERO" /> + <ctl name="ADC1 ChMap" value="ZERO" /> + <ctl name="ADC2 ChMap" value="ZERO" /> + <ctl name="ADC3 ChMap" value="ZERO" /> + <ctl name="ADC4 ChMap" value="ZERO" /> + <ctl name="TX0 MODE" value="ADC_NORMAL" /> + <ctl name="TX1 MODE" value="ADC_NORMAL" /> + <ctl name="TX2 MODE" value="ADC_NORMAL" /> + <ctl name="TX3 MODE" value="ADC_NORMAL" /> + + <!-- Volume controls --> + <ctl name="WSA_RX0 Digital Volume" value="84" /> + <ctl name="WSA_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX0 Digital Volume" value="84" /> + <ctl name="RX_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX2 Digital Volume" value="84" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + + <ctl name="TX_DEC0 Volume" value="102" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="84" /> + <ctl name="TX_DEC5 Volume" value="84" /> + <ctl name="TX_DEC6 Volume" value="84" /> + <ctl name="TX_DEC7 Volume" value="84" /> + + <ctl name="ADC1 Volume" value="12" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="ADC3 Volume" value="12" /> + <ctl name="ADC4 Volume" value="12" /> + + <!-- Compander controls --> + <ctl name="WSA_COMP1 Switch" value="0" /> + <ctl name="WSA_COMP2 Switch" value="0" /> + + <!-- Headphone class-H mode --> + <ctl name="RX_HPH_PWR_MODE" value="ULP" /> + <ctl name="RX HPH Mode" value="CLS_H_ULP" /> + + <!-- IIR/voice anc --> + <ctl name="IIR0 Band1" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band2" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band3" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band4" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band5" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Enable Band1" value="0" /> + <ctl name="IIR0 Enable Band2" value="0" /> + <ctl name="IIR0 Enable Band3" value="0" /> + <ctl name="IIR0 Enable Band4" value="0" /> + <ctl name="IIR0 Enable Band5" value="0" /> + <ctl name="IIR0 INP0 Volume" value="54" /> + <ctl name="IIR0 INP0 MUX" value="ZERO" /> + <ctl name="IIR0 INP1 MUX" value="ZERO" /> + <ctl name="IIR0 INP2 MUX" value="ZERO" /> + <ctl name="IIR0 INP3 MUX" value="ZERO" /> + + <!-- vbat related data --> + <ctl name="GSM mode Enable" value="OFF" /> + <ctl name="WSA_Softclip0 Enable" value="0" /> + <ctl name="WSA_Softclip1 Enable" value="0" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="0" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="0" /> + + <!-- HIFI Filter coefficients for headphones path --> + <path name="hifi-filter-coefficients"> + <ctl name="RX0 FIR Coeff Num" value="8" /> + <ctl name="RX0 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX0 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Num" value="8" /> + <ctl name="RX1 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + </path> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="gsm-mode"> + <ctl name="GSM mode Enable" value="ON" /> + </path> + + + <!-- These are actual sound device specific mixer settings --> + <path name="amic2"> + <ctl name="TX DEC0 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX0" value="SWR_MIC5" /> + <ctl name="DEC0_BCS Switch" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="dmic1"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC0" /> + </path> + + <path name="dmic2"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic3"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic4"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC3" /> + </path> + + <path name="speaker"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="haptics-dev"> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-2"> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-vbat"> + <path name="speaker-mono" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="speaker-mono-2-vbat"> + <path name="speaker-mono-2" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-vbat"> + <path name="speaker" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-fluid"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-liquid"> + <path name="speaker" /> + </path> + + <path name="speaker-safe"> + <path name="speaker-mono"/> + </path> + + <path name="speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-fluid-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-liquid-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="speaker-safe-vbat"> + <path name="speaker-mono-vbat"/> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR0 Enable Band1" value="1" /> + <ctl name="IIR0 Enable Band2" value="1" /> + <ctl name="IIR0 Enable Band3" value="1" /> + <ctl name="IIR0 Enable Band4" value="1" /> + <ctl name="IIR0 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="54" /> + <ctl name="IIR0 INP0 MUX" value="DEC0" /> + <ctl name="RX INT0 MIX2 INP" value="SRC0" /> + <ctl name="RX INT1 MIX2 INP" value="SRC0" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="0" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + <ctl name="RX INT2 MIX2 INP" value="SRC0" /> + <ctl name="WSA_RX0 INT0 SIDETONE MIX" value="SRC0" /> + </path> + + <path name="afe-sidetone"> + </path> + + <path name="speaker-mic"> + <path name="dmic4" /> + </path> + + <path name="speaker-mic-liquid"> + <path name="dmic2" /> + </path> + + <path name="speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-2-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-stereo-protected"> + <path name="speaker-protected" /> + </path> + + <path name="speaker-protected-vbat"> + <path name="speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-protected-vbat"> + <path name="voice-speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-2-protected-vbat"> + <path name="voice-speaker-2-protected" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-stereo-protected-vbat"> + <path name="speaker-protected-vbat" /> + </path> + + <path name="vi-feedback"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="vi-feedback-mono-1"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + </path> + + <path name="vi-feedback-mono-2"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="handset"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="WSA_RX0 Digital Volume" value="70" /> + </path> + + <path name="handset-mic"> + <path name="dmic3" /> + </path> + + <path name="ultrasound-handset"> + <ctl name="WSA RX_MIX0 MUX" value="AIF_MIX1_PB" /> + <ctl name="WSA_RX0 MIX INP" value="RX_MIX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="WSA_RX0 Digital Volume" value="50" /> + </path> + + <path name="ultrasound-mic"> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC3" /> + </path> + + <path name="headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + </path> + + <path name="headphones-and-haptics"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="headphones-44.1"> + <path name="headphones" /> + </path> + + <path name="headphones-hifi-filter"> + <ctl name="RX_FIR Filter" value="ON" /> + <path name="headphones" /> + </path> + + <path name="line"> + <path name="headphones" /> + </path> + + <path name="headset-mic"> + <ctl name="TX_DEC0 Volume" value="84" /> + <path name="amic2" /> + </path> + + <path name="headset-mic-liquid"> + <path name="amic2" /> + </path> + <path name="voice-handset"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-handset-hac"> + <path name="handset" /> + </path> + + <path name="voice-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus-hdk"> + <path name="handset" /> + </path> + <path name="voice-speaker"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-stereo"> + <path name="speaker" /> + </path> + + <path name="voice-speaker-2"> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-fluid"> + <path name="speaker-fluid" /> + </path> + + <path name="voice-speaker-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-stereo-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="voice-speaker-2-vbat"> + <path name="speaker-mono-2-vbat" /> + </path> + + <path name="voice-speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-fluid-vbat"> + <path name="speaker-fluid-vbat" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + </path> + + <path name="voice-headset"> + <path name="headphones" /> + </path> + + <path name="voice-line"> + <path name="voice-headphones" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-headphones-hifi-filter"> + <path name="headphones-hifi-filter" /> + <path name="speaker" /> + </path> + + <path name="speaker-safe-and-headphones"> + <path name="headphones" /> + <path name="speaker-safe" /> + </path> + + <path name="speaker-and-line"> + <path name="speaker-and-headphones" /> + </path> + + <path name="speaker-and-headphones-liquid"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-line-liquid"> + <path name="speaker-and-headphones-liquid" /> + </path> + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="va-mic-mono"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + </path> + + <path name="va-mic-dmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + </path> + + <path name="va-mic-tmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + <ctl name="VA DMIC MUX2" value="DMIC3" /> + </path> + + <path name="va-mic-qmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + <ctl name="VA DMIC MUX2" value="DMIC3" /> + <ctl name="VA DMIC MUX3" value="DMIC0" /> + </path> + + <path name="va-mic"> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-mono-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + </path> + + <path name="va-mic-dmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + </path> + + <path name="va-mic-tmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + <ctl name="VA DMIC MUX2" value="DMIC1" /> + </path> + + <path name="va-mic-qmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + <ctl name="VA DMIC MUX2" value="DMIC1" /> + <ctl name="VA DMIC MUX3" value="DMIC0" /> + </path> + + <path name="va-mic-lpi"> + <path name="va-mic-mono-lpi" /> + </path> + + <path name="headset-va-mic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="headset-va-mic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + + <!-- Dual MIC devices --> + <path name="handset-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="speaker-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic-endfire"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="dmic-endfire-liquid"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="hearing-aid-mic"> + <path name="voice-speaker-mic"/> + </path> + + <path name="handset-stereo-dmic-ef-liquid"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef-liquid"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-liquid-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-speaker-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-fluence-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="speaker-dmic-broadside"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic-broadside"> + <path name="speaker-dmic-broadside" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="voice-speaker-dmic-broadside"> + <path name="dmic-broadside" /> + </path> + + <!-- Tri MIC devices --> + + <path name="three-mic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + </path> + + <path name="speaker-tmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + </path> + + <path name="voice-speaker-tmic"> + <path name="speaker-tmic" /> + </path> + + <!-- Quad MIC devices --> + + <path name="speaker-qmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC0" /> + </path> + + <path name="voice-speaker-qmic"> + <path name="speaker-qmic" /> + </path> + + <path name="quad-mic"> + <path name="speaker-qmic" /> + </path> + + <path name="voice-speaker-qmic-liquid"> + <path name="speaker-qmic-liquid" /> + </path> + + <path name="quad-mic-liquid"> + <path name="speaker-qmic-liquid" /> + </path> + + <path name="handset-dual-dmic-quad-dec"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC1" /> + </path> + + <path name="handset-dual-dmic-quad-dec-reverse"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC2" /> + </path> + + <path name="unprocessed-hdr-mic-landscape"> + <path name="handset-dual-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="108" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="108" /> + <ctl name="TX_DEC4 Volume" value="84" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-landscape"> + <path name="handset-dual-dmic-quad-dec-reverse" /> + <ctl name="TX_DEC1 Volume" value="108" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="108" /> + <ctl name="TX_DEC4 Volume" value="84" /> + </path> + + <path name="handset-single-dmic-quad-dec"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC1" /> + </path> + + <path name="unprocessed-hdr-mic-portrait"> + <path name="handset-single-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="102" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-portrait"> + <path name="handset-single-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="102" /> + </path> + + <path name="camcorder-main-mic"> + <path name="speaker-mic" /> + </path> + + <path name="camcorder-dual-mic"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="camcorder-quad-mic"> + <path name="speaker-qmic" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <path name="handset" /> + </path> + + + <path name="voice-tty-hco-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="amic2" /> + <ctl name="ADC2 Volume" value="0" /> + <ctl name="TX_DEC0 Volume" value="84" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <ctl name="TX DEC6 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX6" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="dmic1" /> + </path> + + <path name="unprocessed-handset-mic"> + <path name="handset-mic" /> + </path> + + <path name="unprocessed-mic"> + <path name="unprocessed-handset-mic" /> + </path> + + <path name="unprocessed-stereo-mic"> + <path name="voice-rec-dmic-ef" /> + </path> + + <path name="unprocessed-three-mic"> + <path name="three-mic" /> + </path> + + <path name="unprocessed-quad-mic"> + <path name="quad-mic" /> + </path> + + <path name="unprocessed-headset-mic"> + <path name="headset-mic" /> + </path> + +</mixer> diff --git a/configs/parrot/mixer_paths_parrot_idp_sku1.xml b/configs/parrot/mixer_paths_parrot_idp_sku1.xml new file mode 100644 index 00000000..2e357c9e --- /dev/null +++ b/configs/parrot/mixer_paths_parrot_idp_sku1.xml @@ -0,0 +1,1083 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<!-- --> +<!-- Changes from Qualcomm Innovation Center are provided under the following license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- These are the initial mixer settings --> + + <!-- WSA controls --> + <ctl name="WSA RX0 MUX" value="ZERO" /> + <ctl name="WSA RX1 MUX" value="ZERO" /> + <ctl name="WSA_RX0 INP0" value="ZERO" /> + <ctl name="WSA_RX1 INP0" value="ZERO" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="0" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="0" /> + <ctl name="SpkrLeft COMP Switch" value="0" /> + <ctl name="SpkrRight COMP Switch" value="0" /> + <ctl name="SpkrLeft VISENSE Switch" value="0" /> + <ctl name="SpkrRight VISENSE Switch" value="0" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="0" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="0" /> + + <!-- RX Controls --> + <ctl name="RX_MACRO RX0 MUX" value="ZERO" /> + <ctl name="RX_MACRO RX1 MUX" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT0 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="0" /> + <ctl name="RX_COMP2 Switch" value="0" /> + <ctl name="HPHL_COMP Switch" value="0" /> + <ctl name="HPHR_COMP Switch" value="0" /> + <ctl name="EAR_RDAC Switch" value="0" /> + <ctl name="HPHL_RDAC Switch" value="0" /> + <ctl name="HPHR_RDAC Switch" value="0" /> + <ctl name="AUX_RDAC Switch" value="0" /> + <ctl name="RX_FIR Filter" value="OFF" /> + <ctl name="RX_EAR Mode" value="OFF" /> + + <!-- TX Controls --> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="ZERO" /> + <ctl name="VA DMIC MUX1" value="ZERO" /> + <ctl name="VA DMIC MUX2" value="ZERO" /> + <ctl name="VA DMIC MUX3" value="ZERO" /> + <ctl name="VA SMIC MUX0" value="ZERO" /> + <ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="LPI Enable" value="0" /> + <ctl name="ADC1_MIXER Switch" value="0" /> + <ctl name="ADC2_MIXER Switch" value="0" /> + <ctl name="ADC3_MIXER Switch" value="0" /> + <ctl name="ADC4_MIXER Switch" value="0" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="DEC0_BCS Switch" value="0" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="VA_AMIC2_MIXER Switch" value="0" /> + <ctl name="AMIC2_MIXER Switch" value="0" /> + + <ctl name="TX_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC7" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC7" value="0" /> + <ctl name="TX DEC0 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX0" value="ZERO" /> + <ctl name="TX SMIC MUX0" value="ZERO" /> + <ctl name="TX DEC1 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX1" value="ZERO" /> + <ctl name="TX SMIC MUX1" value="ZERO" /> + <ctl name="TX DEC2 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX2" value="ZERO" /> + <ctl name="TX SMIC MUX2" value="ZERO" /> + <ctl name="TX DEC3 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX3" value="ZERO" /> + <ctl name="TX SMIC MUX3" value="ZERO" /> + <ctl name="TX DEC4 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX4" value="ZERO" /> + <ctl name="TX SMIC MUX4" value="ZERO" /> + <ctl name="TX DEC5 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX5" value="ZERO" /> + <ctl name="TX SMIC MUX5" value="ZERO" /> + <ctl name="TX DEC6 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX6" value="ZERO" /> + <ctl name="TX SMIC MUX6" value="ZERO" /> + <ctl name="TX DEC7 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX7" value="ZERO" /> + <ctl name="TX SMIC MUX7" value="ZERO" /> + <ctl name="ADC1 ChMap" value="ZERO" /> + <ctl name="ADC2 ChMap" value="ZERO" /> + <ctl name="ADC3 ChMap" value="ZERO" /> + <ctl name="ADC4 ChMap" value="ZERO" /> + <ctl name="TX0 MODE" value="ADC_NORMAL" /> + <ctl name="TX1 MODE" value="ADC_NORMAL" /> + <ctl name="TX2 MODE" value="ADC_NORMAL" /> + <ctl name="TX3 MODE" value="ADC_NORMAL" /> + + <!-- Volume controls --> + <ctl name="WSA_RX0 Digital Volume" value="84" /> + <ctl name="WSA_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX0 Digital Volume" value="84" /> + <ctl name="RX_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX2 Digital Volume" value="84" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + + <ctl name="TX_DEC0 Volume" value="102" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="84" /> + <ctl name="TX_DEC5 Volume" value="84" /> + <ctl name="TX_DEC6 Volume" value="84" /> + <ctl name="TX_DEC7 Volume" value="84" /> + + <ctl name="ADC1 Volume" value="12" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="ADC3 Volume" value="12" /> + <ctl name="ADC4 Volume" value="12" /> + + <!-- Compander controls --> + <ctl name="WSA_COMP1 Switch" value="0" /> + <ctl name="WSA_COMP2 Switch" value="0" /> + + <!-- Headphone class-H mode --> + <ctl name="RX_HPH_PWR_MODE" value="ULP" /> + <ctl name="RX HPH Mode" value="CLS_H_ULP" /> + + <!-- IIR/voice anc --> + <ctl name="IIR0 Band1" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band2" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band3" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band4" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band5" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Enable Band1" value="0" /> + <ctl name="IIR0 Enable Band2" value="0" /> + <ctl name="IIR0 Enable Band3" value="0" /> + <ctl name="IIR0 Enable Band4" value="0" /> + <ctl name="IIR0 Enable Band5" value="0" /> + <ctl name="IIR0 INP0 Volume" value="54" /> + <ctl name="IIR0 INP0 MUX" value="ZERO" /> + <ctl name="IIR0 INP1 MUX" value="ZERO" /> + <ctl name="IIR0 INP2 MUX" value="ZERO" /> + <ctl name="IIR0 INP3 MUX" value="ZERO" /> + + <!-- vbat related data --> + <ctl name="GSM mode Enable" value="OFF" /> + <ctl name="WSA_Softclip0 Enable" value="0" /> + <ctl name="WSA_Softclip1 Enable" value="0" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="0" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="0" /> + + <!-- HIFI Filter coefficients for headphones path --> + <path name="hifi-filter-coefficients"> + <ctl name="RX0 FIR Coeff Num" value="8" /> + <ctl name="RX0 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX0 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Num" value="8" /> + <ctl name="RX1 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + </path> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="gsm-mode"> + <ctl name="GSM mode Enable" value="ON" /> + </path> + + + <!-- These are actual sound device specific mixer settings --> + <path name="amic2"> + <ctl name="TX DEC0 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX0" value="SWR_MIC5" /> + <ctl name="DEC0_BCS Switch" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="dmic1"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC0" /> + </path> + + <path name="dmic2"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic3"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic4"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC3" /> + </path> + + <path name="speaker"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="haptics-dev"> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-2"> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-vbat"> + <path name="speaker-mono" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="speaker-mono-2-vbat"> + <path name="speaker-mono-2" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-vbat"> + <path name="speaker" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-fluid"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-liquid"> + <path name="speaker" /> + </path> + + <path name="speaker-safe"> + <path name="speaker-mono"/> + </path> + + <path name="speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-fluid-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-liquid-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="speaker-safe-vbat"> + <path name="speaker-mono-vbat"/> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR0 Enable Band1" value="1" /> + <ctl name="IIR0 Enable Band2" value="1" /> + <ctl name="IIR0 Enable Band3" value="1" /> + <ctl name="IIR0 Enable Band4" value="1" /> + <ctl name="IIR0 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="54" /> + <ctl name="IIR0 INP0 MUX" value="DEC0" /> + <ctl name="RX INT0 MIX2 INP" value="SRC0" /> + <ctl name="RX INT1 MIX2 INP" value="SRC0" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="0" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + <ctl name="RX INT2 MIX2 INP" value="SRC0" /> + <ctl name="WSA_RX0 INT0 SIDETONE MIX" value="SRC0" /> + </path> + + <path name="afe-sidetone"> + </path> + + <path name="speaker-mic"> + <path name="dmic4" /> + </path> + + <path name="speaker-mic-liquid"> + <path name="dmic2" /> + </path> + + <path name="speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-2-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-stereo-protected"> + <path name="speaker-protected" /> + </path> + + <path name="speaker-protected-vbat"> + <path name="speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-protected-vbat"> + <path name="voice-speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-2-protected-vbat"> + <path name="voice-speaker-2-protected" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-stereo-protected-vbat"> + <path name="speaker-protected-vbat" /> + </path> + + <path name="vi-feedback"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="vi-feedback-mono-1"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + </path> + + <path name="vi-feedback-mono-2"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="handset"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="WSA_RX0 Digital Volume" value="70" /> + </path> + + <path name="handset-mic"> + <path name="dmic3" /> + </path> + + <path name="ultrasound-handset"> + <ctl name="WSA RX_MIX0 MUX" value="AIF_MIX1_PB" /> + <ctl name="WSA_RX0 MIX INP" value="RX_MIX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="WSA_RX0 Digital Volume" value="50" /> + </path> + + <path name="ultrasound-mic"> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC3" /> + </path> + + <path name="headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + </path> + + <path name="headphones-and-haptics"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="headphones-44.1"> + <path name="headphones" /> + </path> + + <path name="headphones-hifi-filter"> + <ctl name="RX_FIR Filter" value="ON" /> + <path name="headphones" /> + </path> + + <path name="line"> + <path name="headphones" /> + </path> + + <path name="headset-mic"> + <ctl name="TX_DEC0 Volume" value="84" /> + <path name="amic2" /> + </path> + + <path name="headset-mic-liquid"> + <path name="amic2" /> + </path> + <path name="voice-handset"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-handset-hac"> + <path name="handset" /> + </path> + + <path name="voice-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus-hdk"> + <path name="handset" /> + </path> + <path name="voice-speaker"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-stereo"> + <path name="speaker" /> + </path> + + <path name="voice-speaker-2"> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-fluid"> + <path name="speaker-fluid" /> + </path> + + <path name="voice-speaker-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-stereo-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="voice-speaker-2-vbat"> + <path name="speaker-mono-2-vbat" /> + </path> + + <path name="voice-speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-fluid-vbat"> + <path name="speaker-fluid-vbat" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + </path> + + <path name="voice-headset"> + <path name="headphones" /> + </path> + + <path name="voice-line"> + <path name="voice-headphones" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-headphones-hifi-filter"> + <path name="headphones-hifi-filter" /> + <path name="speaker" /> + </path> + + <path name="speaker-safe-and-headphones"> + <path name="headphones" /> + <path name="speaker-safe" /> + </path> + + <path name="speaker-and-line"> + <path name="speaker-and-headphones" /> + </path> + + <path name="speaker-and-headphones-liquid"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-line-liquid"> + <path name="speaker-and-headphones-liquid" /> + </path> + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="va-mic-mono"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + </path> + + <path name="va-mic-dmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + </path> + + <path name="va-mic-tmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + <ctl name="VA DMIC MUX2" value="DMIC3" /> + </path> + + <path name="va-mic-qmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC1" /> + <ctl name="VA DMIC MUX2" value="DMIC3" /> + <ctl name="VA DMIC MUX3" value="DMIC0" /> + </path> + + <path name="va-mic"> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-mono-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + </path> + + <path name="va-mic-dmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + </path> + + <path name="va-mic-tmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + <ctl name="VA DMIC MUX2" value="DMIC1" /> + </path> + + <path name="va-mic-qmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="VA DEC0 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC1 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC2 MUX" value="MSM_DMIC" /> + <ctl name="VA DEC3 MUX" value="MSM_DMIC" /> + <ctl name="VA DMIC MUX0" value="DMIC2" /> + <ctl name="VA DMIC MUX1" value="DMIC3" /> + <ctl name="VA DMIC MUX2" value="DMIC1" /> + <ctl name="VA DMIC MUX3" value="DMIC0" /> + </path> + + <path name="va-mic-lpi"> + <path name="va-mic-mono-lpi" /> + </path> + + <path name="headset-va-mic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="headset-va-mic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + + <!-- Dual MIC devices --> + <path name="handset-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="speaker-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic-endfire"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="dmic-endfire-liquid"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="hearing-aid-mic"> + <path name="voice-speaker-mic"/> + </path> + + <path name="handset-stereo-dmic-ef-liquid"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef-liquid"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-liquid-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-speaker-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-fluence-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="speaker-dmic-broadside"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic-broadside"> + <path name="speaker-dmic-broadside" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="voice-speaker-dmic-broadside"> + <path name="dmic-broadside" /> + </path> + + <!-- Tri MIC devices --> + + <path name="three-mic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + </path> + + <path name="speaker-tmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + </path> + + <path name="voice-speaker-tmic"> + <path name="speaker-tmic" /> + </path> + + <!-- Quad MIC devices --> + + <path name="speaker-qmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC3" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC0" /> + </path> + + <path name="voice-speaker-qmic"> + <path name="speaker-qmic" /> + </path> + + <path name="quad-mic"> + <path name="speaker-qmic" /> + </path> + + <path name="voice-speaker-qmic-liquid"> + <path name="speaker-qmic-liquid" /> + </path> + + <path name="quad-mic-liquid"> + <path name="speaker-qmic-liquid" /> + </path> + + <path name="handset-dual-dmic-quad-dec"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC1" /> + </path> + + <path name="handset-dual-dmic-quad-dec-reverse"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC2" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC2" /> + </path> + + <path name="unprocessed-hdr-mic-landscape"> + <path name="handset-dual-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="108" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="108" /> + <ctl name="TX_DEC4 Volume" value="84" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-landscape"> + <path name="handset-dual-dmic-quad-dec-reverse" /> + <ctl name="TX_DEC1 Volume" value="108" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="108" /> + <ctl name="TX_DEC4 Volume" value="84" /> + </path> + + <path name="handset-single-dmic-quad-dec"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX DMIC MUX1" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DMIC MUX3" value="DMIC1" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1" /> + <ctl name="TX DMIC MUX4" value="DMIC1" /> + </path> + + <path name="unprocessed-hdr-mic-portrait"> + <path name="handset-single-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="102" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-portrait"> + <path name="handset-single-dmic-quad-dec" /> + <ctl name="TX_DEC1 Volume" value="102" /> + <ctl name="TX_DEC2 Volume" value="102" /> + <ctl name="TX_DEC3 Volume" value="102" /> + <ctl name="TX_DEC4 Volume" value="102" /> + </path> + + <path name="camcorder-main-mic"> + <path name="speaker-mic" /> + </path> + + <path name="camcorder-dual-mic"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="camcorder-quad-mic"> + <path name="speaker-qmic" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <path name="handset" /> + </path> + + + <path name="voice-tty-hco-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="amic2" /> + <ctl name="ADC2 Volume" value="0" /> + <ctl name="TX_DEC0 Volume" value="84" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <ctl name="TX DEC6 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX6" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="dmic1" /> + </path> + + <path name="unprocessed-handset-mic"> + <path name="handset-mic" /> + </path> + + <path name="unprocessed-mic"> + <path name="unprocessed-handset-mic" /> + </path> + + <path name="unprocessed-stereo-mic"> + <path name="voice-rec-dmic-ef" /> + </path> + + <path name="unprocessed-three-mic"> + <path name="three-mic" /> + </path> + + <path name="unprocessed-quad-mic"> + <path name="quad-mic" /> + </path> + + <path name="unprocessed-headset-mic"> + <path name="headset-mic" /> + </path> + +</mixer> diff --git a/configs/parrot/mixer_paths_parrot_qrd.xml b/configs/parrot/mixer_paths_parrot_qrd.xml new file mode 100644 index 00000000..967b6489 --- /dev/null +++ b/configs/parrot/mixer_paths_parrot_qrd.xml @@ -0,0 +1,1152 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<!-- --> +<!-- Changes from Qualcomm Innovation Center are provided under the following --> +<!-- license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names --> +<!-- of its contributors may be used to endorse or promote products --> +<!-- derived from this software without specific prior written permission.--> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- These are the initial mixer settings --> + + <!-- WSA controls --> + <ctl name="WSA RX0 MUX" value="ZERO" /> + <ctl name="WSA RX1 MUX" value="ZERO" /> + <ctl name="WSA_RX0 INP0" value="ZERO" /> + <ctl name="WSA_RX1 INP0" value="ZERO" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="0" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="0" /> + <ctl name="SpkrLeft COMP Switch" value="0" /> + <ctl name="SpkrRight COMP Switch" value="0" /> + <ctl name="SpkrLeft VISENSE Switch" value="0" /> + <ctl name="SpkrRight VISENSE Switch" value="0" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="0" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="0" /> + + <!-- RX Controls --> + <ctl name="RX_MACRO RX0 MUX" value="ZERO" /> + <ctl name="RX_MACRO RX1 MUX" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT0 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="0" /> + <ctl name="RX_COMP2 Switch" value="0" /> + <ctl name="HPHL_COMP Switch" value="0" /> + <ctl name="HPHR_COMP Switch" value="0" /> + <ctl name="EAR_RDAC Switch" value="0" /> + <ctl name="HPHL_RDAC Switch" value="0" /> + <ctl name="HPHR_RDAC Switch" value="0" /> + <ctl name="AUX_RDAC Switch" value="0" /> + <ctl name="RX_FIR Filter" value="OFF" /> + <ctl name="RX_EAR Mode" value="OFF" /> + + <!-- TX Controls --> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA DEC3 MUX" value="SWR_MIC" /> + <ctl name="VA DMIC MUX0" value="ZERO" /> + <ctl name="VA DMIC MUX1" value="ZERO" /> + <ctl name="VA DMIC MUX2" value="ZERO" /> + <ctl name="VA DMIC MUX3" value="ZERO" /> + <ctl name="VA SMIC MUX0" value="ZERO" /> + <ctl name="VA SMIC MUX1" value="ZERO" /> + <ctl name="VA SMIC MUX2" value="ZERO" /> + <ctl name="VA SMIC MUX3" value="ZERO" /> + <ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="LPI Enable" value="0" /> + <ctl name="ADC1_MIXER Switch" value="0" /> + <ctl name="ADC2_MIXER Switch" value="0" /> + <ctl name="ADC3_MIXER Switch" value="0" /> + <ctl name="ADC4_MIXER Switch" value="0" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="DEC0_BCS Switch" value="0" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="VA_AMIC1_MIXER Switch" value="0" /> + <ctl name="VA_AMIC2_MIXER Switch" value="0" /> + <ctl name="VA_AMIC3_MIXER Switch" value="0" /> + <ctl name="VA_AMIC4_MIXER Switch" value="0" /> + <ctl name="AMIC1_MIXER Switch" value="0" /> + <ctl name="AMIC2_MIXER Switch" value="0" /> + <ctl name="AMIC3_MIXER Switch" value="0" /> + <ctl name="AMIC4_MIXER Switch" value="0" /> + + <ctl name="TX_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC7" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC7" value="0" /> + <ctl name="TX DEC0 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX0" value="ZERO" /> + <ctl name="TX SMIC MUX0" value="ZERO" /> + <ctl name="TX DEC1 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX1" value="ZERO" /> + <ctl name="TX SMIC MUX1" value="ZERO" /> + <ctl name="TX DEC2 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX2" value="ZERO" /> + <ctl name="TX SMIC MUX2" value="ZERO" /> + <ctl name="TX DEC3 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX3" value="ZERO" /> + <ctl name="TX SMIC MUX3" value="ZERO" /> + <ctl name="TX DEC4 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX4" value="ZERO" /> + <ctl name="TX SMIC MUX4" value="ZERO" /> + <ctl name="TX DEC5 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX5" value="ZERO" /> + <ctl name="TX SMIC MUX5" value="ZERO" /> + <ctl name="TX DEC6 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX6" value="ZERO" /> + <ctl name="TX SMIC MUX6" value="ZERO" /> + <ctl name="TX DEC7 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX7" value="ZERO" /> + <ctl name="TX SMIC MUX7" value="ZERO" /> + <ctl name="ADC1 ChMap" value="ZERO" /> + <ctl name="ADC2 ChMap" value="ZERO" /> + <ctl name="ADC3 ChMap" value="ZERO" /> + <ctl name="ADC4 ChMap" value="ZERO" /> + + <!-- Volume controls --> + <ctl name="WSA_RX0 Digital Volume" value="84" /> + <ctl name="WSA_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX0 Digital Volume" value="84" /> + <ctl name="RX_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX2 Digital Volume" value="84" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + + <ctl name="TX_DEC0 Volume" value="84" /> + <ctl name="TX_DEC1 Volume" value="84" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="84" /> + <ctl name="TX_DEC4 Volume" value="84" /> + <ctl name="TX_DEC5 Volume" value="84" /> + <ctl name="TX_DEC6 Volume" value="84" /> + <ctl name="TX_DEC7 Volume" value="84" /> + + <ctl name="ADC1 Volume" value="12" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="ADC3 Volume" value="12" /> + <ctl name="ADC4 Volume" value="12" /> + + <!-- Compander controls --> + <ctl name="WSA_COMP1 Switch" value="0" /> + <ctl name="WSA_COMP2 Switch" value="0" /> + + <!-- Headphone class-H mode --> + <ctl name="RX_HPH_PWR_MODE" value="ULP" /> + <ctl name="RX HPH Mode" value="CLS_H_ULP" /> + + <!-- IIR/voice anc --> + <ctl name="IIR0 Band1" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band2" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band3" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band4" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band5" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Enable Band1" value="0" /> + <ctl name="IIR0 Enable Band2" value="0" /> + <ctl name="IIR0 Enable Band3" value="0" /> + <ctl name="IIR0 Enable Band4" value="0" /> + <ctl name="IIR0 Enable Band5" value="0" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="ZERO" /> + <ctl name="IIR0 INP1 MUX" value="ZERO" /> + <ctl name="IIR0 INP2 MUX" value="ZERO" /> + <ctl name="IIR0 INP3 MUX" value="ZERO" /> + + <!-- vbat related data --> + <ctl name="GSM mode Enable" value="OFF" /> + <ctl name="WSA_Softclip0 Enable" value="0" /> + <ctl name="WSA_Softclip1 Enable" value="0" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="0" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="0" /> + + <!-- HIFI Filter coefficients for headphones path --> + <path name="hifi-filter-coefficients"> + <ctl name="RX0 FIR Coeff Num" value="8" /> + <ctl name="RX0 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX0 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Num" value="8" /> + <ctl name="RX1 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + </path> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="gsm-mode"> + <ctl name="GSM mode Enable" value="ON" /> + </path> + + + <!-- These are actual sound device specific mixer settings --> + <path name="amic1"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="amic2"> + <ctl name="TX DEC0 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX0" value="SWR_MIC5" /> + <ctl name="DEC0_BCS Switch" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX1_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + + <path name="amic3"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="amic4"> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC8" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="amic5"> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX3 MODE" value="ADC_LP" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="amic6"> + <ctl name="TX DEC4 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX4" value="SWR_MIC4" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic1"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC0" /> + </path> + + <path name="dmic2"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic3"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic4"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC3" /> + </path> + + <path name="dmic5"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC4" /> + </path> + + <path name="dmic6"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC5" /> + </path> + + <path name="speaker"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="haptics-dev"> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-2"> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-vbat"> + <path name="speaker-mono" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="speaker-mono-2-vbat"> + <path name="speaker-mono-2" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-vbat"> + <path name="speaker" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-fluid"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-liquid"> + <path name="speaker" /> + </path> + + <path name="speaker-safe"> + <path name="speaker-mono"/> + </path> + + <path name="speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-fluid-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-liquid-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="speaker-safe-vbat"> + <path name="speaker-mono-vbat"/> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR0 Enable Band1" value="1" /> + <ctl name="IIR0 Enable Band2" value="1" /> + <ctl name="IIR0 Enable Band3" value="1" /> + <ctl name="IIR0 Enable Band4" value="1" /> + <ctl name="IIR0 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC0" /> + <ctl name="RX INT0 MIX2 INP" value="SRC0" /> + <ctl name="RX INT1 MIX2 INP" value="SRC0" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + <ctl name="RX INT2 MIX2 INP" value="SRC0" /> + <ctl name="WSA_RX0 INT0 SIDETONE MIX" value="SRC0" /> + </path> + + <path name="afe-sidetone"> + <ctl name="Voice Sidetone Enable" value="1" /> + </path> + + <path name="speaker-mic"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-liquid"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-sbc"> + </path> + + <path name="speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-2-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-stereo-protected"> + <path name="speaker-protected" /> + </path> + + <path name="speaker-protected-vbat"> + <path name="speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-protected-vbat"> + <path name="voice-speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-2-protected-vbat"> + <path name="voice-speaker-2-protected" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-stereo-protected-vbat"> + <path name="speaker-protected-vbat" /> + </path> + + <path name="vi-feedback"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="vi-feedback-mono-1"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + </path> + + <path name="vi-feedback-mono-2"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="handset"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + </path> + + <path name="handset-mic"> + <path name="amic3" /> + </path> + + <path name="ultrasound-handset"> + <ctl name="WSA RX_MIX0 MUX" value="AIF_MIX1_PB" /> + <ctl name="WSA_RX0 MIX INP" value="RX_MIX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + </path> + + <path name="ultrasound-mic"> + <path name="amic6" /> + </path> + + <path name="headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + </path> + + <path name="headphones-and-haptics"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="headphones-44.1"> + <path name="headphones" /> + </path> + + <path name="headphones-hifi-filter"> + <ctl name="RX_FIR Filter" value="ON" /> + <path name="headphones" /> + </path> + + <path name="line"> + <path name="headphones" /> + </path> + + <path name="headset-mic"> + <ctl name="TX_DEC0 Volume" value="84" /> + <path name="amic2" /> + </path> + + <path name="headset-mic-liquid"> + <path name="amic2" /> + </path> + + <path name="voice-handset"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-handset-hac"> + <path name="handset" /> + </path> + + <path name="voice-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus-hdk"> + <path name="handset" /> + </path> + + <path name="voice-speaker"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-stereo"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-2"> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-fluid"> + <path name="speaker-fluid" /> + </path> + + <path name="voice-speaker-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-stereo-vbat"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker-vbat" /> + </path> + + <path name="voice-speaker-2-vbat"> + <path name="speaker-mono-2-vbat" /> + </path> + + <path name="voice-speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-fluid-vbat"> + <path name="speaker-fluid-vbat" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + </path> + + <path name="voice-headset"> + <path name="headphones" /> + </path> + + <path name="voice-line"> + <path name="voice-headphones" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-headphones-hifi-filter"> + <path name="headphones-hifi-filter" /> + <path name="speaker" /> + </path> + + <path name="speaker-safe-and-headphones"> + <path name="headphones" /> + <path name="speaker-safe" /> + </path> + + <path name="speaker-and-line"> + <path name="speaker-and-headphones" /> + </path> + + <path name="speaker-and-headphones-liquid"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-line-liquid"> + <path name="speaker-and-headphones-liquid" /> + </path> + + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="va-mic-mono"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-dmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC5" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-tmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC2 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC4" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC1_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic"> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-mono-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-dmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-dmic" /> + </path> + + <path name="va-mic-tmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-tmic" /> + </path> + + <path name="va-mic-lpi"> + <path name="va-mic-mono-lpi" /> + </path> + + <path name="headset-va-mic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="headset-va-mic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <!-- Dual MIC devices --> + <path name="handset-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="speaker-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-endfire"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="dmic-endfire-liquid"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="hearing-aid-mic"> + <path name="voice-speaker-mic"/> + </path> + + <path name="handset-stereo-dmic-ef-liquid"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef-liquid"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-liquid-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-speaker-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-fluence-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="speaker-dmic-broadside"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC8" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-broadside"> + <path name="speaker-dmic-broadside" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="voice-speaker-dmic-broadside"> + <path name="dmic-broadside" /> + </path> + + <!-- Tri MIC devices --> + <path name="three-mic"> + <path name="speaker-tmic" /> + </path> + + <path name="speaker-tmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="voice-speaker-tmic"> + <path name="speaker-tmic" /> + </path> + + <!-- Quad MIC devices --> + + <path name="handset-single-amic-dual-adc-hdr"> + <ctl name="TX DEC1 MUX" value="SWR_MIC"/> + <ctl name="TX DEC2 MUX" value="SWR_MIC"/> + <ctl name="TX DEC3 MUX" value="SWR_MIC"/> + <ctl name="TX DEC4 MUX" value="SWR_MIC"/> + <ctl name="TX SMIC MUX1" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX2" value="SWR_MIC5"/> + <ctl name="TX SMIC MUX3" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX4" value="SWR_MIC5"/> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1"/> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1"/> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2"/> + <ctl name="HDR12 MUX" value="HDR12"/> + <ctl name="ADC1_MIXER Switch" value="1"/> + <ctl name="ADC2_MIXER Switch" value="1"/> + <ctl name="TX1 MODE" value="ADC_LP"/> + <ctl name="TX0 MODE" value="ADC_LP"/> + <ctl name="TX_DEC1 Volume" value="84"/> + <ctl name="TX_DEC2 Volume" value="84"/> + <ctl name="TX_DEC3 Volume" value="84"/> + <ctl name="TX_DEC4 Volume" value="84"/> + <ctl name="ADC1 Volume" value="16"/> + <ctl name="ADC2 Volume" value="0"/> + <ctl name="AMIC1_MIXER Switch" value="1"/> + </path> + + <path name="unprocessed-hdr-mic-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <path name="handset" /> + </path> + + + <path name="voice-tty-hco-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="amic2" /> + <ctl name="ADC2 Volume" value="0" /> + <ctl name="TX_DEC5 Volume" value="84" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <ctl name="TX DEC6 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX6" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="dmic3" /> + </path> + + <path name="unprocessed-handset-mic"> + <path name="handset-mic" /> + </path> + + <path name="unprocessed-mic"> + <path name="unprocessed-handset-mic" /> + </path> + + <path name="unprocessed-stereo-mic"> + <path name="voice-rec-dmic-ef" /> + </path> + + <path name="unprocessed-three-mic"> + <path name="three-mic" /> + </path> + + <path name="unprocessed-headset-mic"> + <path name="headset-mic" /> + </path> + +</mixer> diff --git a/configs/parrot/mixer_paths_parrot_qrd_sku1.xml b/configs/parrot/mixer_paths_parrot_qrd_sku1.xml new file mode 100644 index 00000000..f65ac42b --- /dev/null +++ b/configs/parrot/mixer_paths_parrot_qrd_sku1.xml @@ -0,0 +1,1155 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> + +<!-- Changes from Qualcomm Innovation Center are provided under the following --> +<!-- license: --> +<!-- --> +<!-- Changes from Qualcomm Innovation Center are provided under the following --> +<!-- license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names --> +<!-- of its contributors may be used to endorse or promote products --> +<!-- derived from this software without specific prior written permission.--> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- These are the initial mixer settings --> + + <!-- WSA controls --> + <ctl name="WSA RX0 MUX" value="ZERO" /> + <ctl name="WSA RX1 MUX" value="ZERO" /> + <ctl name="WSA_RX0 INP0" value="ZERO" /> + <ctl name="WSA_RX1 INP0" value="ZERO" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="0" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="0" /> + <ctl name="SpkrLeft COMP Switch" value="0" /> + <ctl name="SpkrRight COMP Switch" value="0" /> + <ctl name="SpkrLeft VISENSE Switch" value="0" /> + <ctl name="SpkrRight VISENSE Switch" value="0" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="0" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="0" /> + + <!-- RX Controls --> + <ctl name="RX_MACRO RX0 MUX" value="ZERO" /> + <ctl name="RX_MACRO RX1 MUX" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT0 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="0" /> + <ctl name="RX_COMP2 Switch" value="0" /> + <ctl name="HPHL_COMP Switch" value="0" /> + <ctl name="HPHR_COMP Switch" value="0" /> + <ctl name="EAR_RDAC Switch" value="0" /> + <ctl name="HPHL_RDAC Switch" value="0" /> + <ctl name="HPHR_RDAC Switch" value="0" /> + <ctl name="AUX_RDAC Switch" value="0" /> + <ctl name="RX_FIR Filter" value="OFF" /> + <ctl name="RX_EAR Mode" value="OFF" /> + + <!-- TX Controls --> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA DEC3 MUX" value="SWR_MIC" /> + <ctl name="VA DMIC MUX0" value="ZERO" /> + <ctl name="VA DMIC MUX1" value="ZERO" /> + <ctl name="VA DMIC MUX2" value="ZERO" /> + <ctl name="VA DMIC MUX3" value="ZERO" /> + <ctl name="VA SMIC MUX0" value="ZERO" /> + <ctl name="VA SMIC MUX1" value="ZERO" /> + <ctl name="VA SMIC MUX2" value="ZERO" /> + <ctl name="VA SMIC MUX3" value="ZERO" /> + <ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="LPI Enable" value="0" /> + <ctl name="ADC1_MIXER Switch" value="0" /> + <ctl name="ADC2_MIXER Switch" value="0" /> + <ctl name="ADC3_MIXER Switch" value="0" /> + <ctl name="ADC4_MIXER Switch" value="0" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="DEC0_BCS Switch" value="0" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="VA_AMIC1_MIXER Switch" value="0" /> + <ctl name="VA_AMIC2_MIXER Switch" value="0" /> + <ctl name="VA_AMIC3_MIXER Switch" value="0" /> + <ctl name="VA_AMIC4_MIXER Switch" value="0" /> + <ctl name="AMIC1_MIXER Switch" value="0" /> + <ctl name="AMIC2_MIXER Switch" value="0" /> + <ctl name="AMIC3_MIXER Switch" value="0" /> + <ctl name="AMIC4_MIXER Switch" value="0" /> + + <ctl name="TX_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC7" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC7" value="0" /> + <ctl name="TX DEC0 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX0" value="ZERO" /> + <ctl name="TX SMIC MUX0" value="ZERO" /> + <ctl name="TX DEC1 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX1" value="ZERO" /> + <ctl name="TX SMIC MUX1" value="ZERO" /> + <ctl name="TX DEC2 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX2" value="ZERO" /> + <ctl name="TX SMIC MUX2" value="ZERO" /> + <ctl name="TX DEC3 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX3" value="ZERO" /> + <ctl name="TX SMIC MUX3" value="ZERO" /> + <ctl name="TX DEC4 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX4" value="ZERO" /> + <ctl name="TX SMIC MUX4" value="ZERO" /> + <ctl name="TX DEC5 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX5" value="ZERO" /> + <ctl name="TX SMIC MUX5" value="ZERO" /> + <ctl name="TX DEC6 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX6" value="ZERO" /> + <ctl name="TX SMIC MUX6" value="ZERO" /> + <ctl name="TX DEC7 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX7" value="ZERO" /> + <ctl name="TX SMIC MUX7" value="ZERO" /> + <ctl name="ADC1 ChMap" value="ZERO" /> + <ctl name="ADC2 ChMap" value="ZERO" /> + <ctl name="ADC3 ChMap" value="ZERO" /> + <ctl name="ADC4 ChMap" value="ZERO" /> + + <!-- Volume controls --> + <ctl name="WSA_RX0 Digital Volume" value="84" /> + <ctl name="WSA_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX0 Digital Volume" value="84" /> + <ctl name="RX_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX2 Digital Volume" value="84" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + + <ctl name="TX_DEC0 Volume" value="84" /> + <ctl name="TX_DEC1 Volume" value="84" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="84" /> + <ctl name="TX_DEC4 Volume" value="84" /> + <ctl name="TX_DEC5 Volume" value="84" /> + <ctl name="TX_DEC6 Volume" value="84" /> + <ctl name="TX_DEC7 Volume" value="84" /> + + <ctl name="ADC1 Volume" value="12" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="ADC3 Volume" value="12" /> + <ctl name="ADC4 Volume" value="12" /> + + <!-- Compander controls --> + <ctl name="WSA_COMP1 Switch" value="0" /> + <ctl name="WSA_COMP2 Switch" value="0" /> + + <!-- Headphone class-H mode --> + <ctl name="RX_HPH_PWR_MODE" value="ULP" /> + <ctl name="RX HPH Mode" value="CLS_H_ULP" /> + + <!-- IIR/voice anc --> + <ctl name="IIR0 Band1" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band2" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band3" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band4" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band5" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Enable Band1" value="0" /> + <ctl name="IIR0 Enable Band2" value="0" /> + <ctl name="IIR0 Enable Band3" value="0" /> + <ctl name="IIR0 Enable Band4" value="0" /> + <ctl name="IIR0 Enable Band5" value="0" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="ZERO" /> + <ctl name="IIR0 INP1 MUX" value="ZERO" /> + <ctl name="IIR0 INP2 MUX" value="ZERO" /> + <ctl name="IIR0 INP3 MUX" value="ZERO" /> + + <!-- vbat related data --> + <ctl name="GSM mode Enable" value="OFF" /> + <ctl name="WSA_Softclip0 Enable" value="0" /> + <ctl name="WSA_Softclip1 Enable" value="0" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="0" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="0" /> + + <!-- HIFI Filter coefficients for headphones path --> + <path name="hifi-filter-coefficients"> + <ctl name="RX0 FIR Coeff Num" value="8" /> + <ctl name="RX0 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX0 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Num" value="8" /> + <ctl name="RX1 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + </path> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="gsm-mode"> + <ctl name="GSM mode Enable" value="ON" /> + </path> + + + <!-- These are actual sound device specific mixer settings --> + <path name="amic1"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="amic2"> + <ctl name="TX DEC0 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX0" value="SWR_MIC5" /> + <ctl name="DEC0_BCS Switch" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX1_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + + <path name="amic3"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="amic4"> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC8" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="amic5"> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX3 MODE" value="ADC_LP" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="amic6"> + <ctl name="TX DEC4 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX4" value="SWR_MIC4" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic1"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC0" /> + </path> + + <path name="dmic2"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic3"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic4"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC3" /> + </path> + + <path name="dmic5"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC4" /> + </path> + + <path name="dmic6"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC5" /> + </path> + + <path name="speaker"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="haptics-dev"> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-2"> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-vbat"> + <path name="speaker-mono" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="speaker-mono-2-vbat"> + <path name="speaker-mono-2" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-vbat"> + <path name="speaker" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-fluid"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-liquid"> + <path name="speaker" /> + </path> + + <path name="speaker-safe"> + <path name="speaker-mono"/> + </path> + + <path name="speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-fluid-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-liquid-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="speaker-safe-vbat"> + <path name="speaker-mono-vbat"/> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR0 Enable Band1" value="1" /> + <ctl name="IIR0 Enable Band2" value="1" /> + <ctl name="IIR0 Enable Band3" value="1" /> + <ctl name="IIR0 Enable Band4" value="1" /> + <ctl name="IIR0 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC0" /> + <ctl name="RX INT0 MIX2 INP" value="SRC0" /> + <ctl name="RX INT1 MIX2 INP" value="SRC0" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + <ctl name="RX INT2 MIX2 INP" value="SRC0" /> + <ctl name="WSA_RX0 INT0 SIDETONE MIX" value="SRC0" /> + </path> + + <path name="afe-sidetone"> + <ctl name="Voice Sidetone Enable" value="1" /> + </path> + + <path name="speaker-mic"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-liquid"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-sbc"> + </path> + + <path name="speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-2-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-stereo-protected"> + <path name="speaker-protected" /> + </path> + + <path name="speaker-protected-vbat"> + <path name="speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-protected-vbat"> + <path name="voice-speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-2-protected-vbat"> + <path name="voice-speaker-2-protected" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-stereo-protected-vbat"> + <path name="speaker-protected-vbat" /> + </path> + + <path name="vi-feedback"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="vi-feedback-mono-1"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + </path> + + <path name="vi-feedback-mono-2"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="handset"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + </path> + + <path name="handset-mic"> + <path name="amic3" /> + </path> + + <path name="ultrasound-handset"> + <ctl name="WSA RX_MIX0 MUX" value="AIF_MIX1_PB" /> + <ctl name="WSA_RX0 MIX INP" value="RX_MIX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + </path> + + <path name="ultrasound-mic"> + <path name="amic6" /> + </path> + + <path name="headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + </path> + + <path name="headphones-and-haptics"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="headphones-44.1"> + <path name="headphones" /> + </path> + + <path name="headphones-hifi-filter"> + <ctl name="RX_FIR Filter" value="ON" /> + <path name="headphones" /> + </path> + + <path name="line"> + <path name="headphones" /> + </path> + + <path name="headset-mic"> + <ctl name="TX_DEC0 Volume" value="84" /> + <path name="amic2" /> + </path> + + <path name="headset-mic-liquid"> + <path name="amic2" /> + </path> + + <path name="voice-handset"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-handset-hac"> + <path name="handset" /> + </path> + + <path name="voice-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus-hdk"> + <path name="handset" /> + </path> + + <path name="voice-speaker"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-stereo"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-2"> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-fluid"> + <path name="speaker-fluid" /> + </path> + + <path name="voice-speaker-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-stereo-vbat"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker-vbat" /> + </path> + + <path name="voice-speaker-2-vbat"> + <path name="speaker-mono-2-vbat" /> + </path> + + <path name="voice-speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-fluid-vbat"> + <path name="speaker-fluid-vbat" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + </path> + + <path name="voice-headset"> + <path name="headphones" /> + </path> + + <path name="voice-line"> + <path name="voice-headphones" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-headphones-hifi-filter"> + <path name="headphones-hifi-filter" /> + <path name="speaker" /> + </path> + + <path name="speaker-safe-and-headphones"> + <path name="headphones" /> + <path name="speaker-safe" /> + </path> + + <path name="speaker-and-line"> + <path name="speaker-and-headphones" /> + </path> + + <path name="speaker-and-headphones-liquid"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-line-liquid"> + <path name="speaker-and-headphones-liquid" /> + </path> + + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="va-mic-mono"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-dmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC5" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-tmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC2 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC4" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC1_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic"> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-mono-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-dmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-dmic" /> + </path> + + <path name="va-mic-tmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-tmic" /> + </path> + + <path name="va-mic-lpi"> + <path name="va-mic-mono-lpi" /> + </path> + + <path name="headset-va-mic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="headset-va-mic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <!-- Dual MIC devices --> + <path name="handset-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="speaker-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-endfire"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="dmic-endfire-liquid"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="hearing-aid-mic"> + <path name="voice-speaker-mic"/> + </path> + + <path name="handset-stereo-dmic-ef-liquid"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef-liquid"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-liquid-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-speaker-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-fluence-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="speaker-dmic-broadside"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC8" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-broadside"> + <path name="speaker-dmic-broadside" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="voice-speaker-dmic-broadside"> + <path name="dmic-broadside" /> + </path> + + <!-- Tri MIC devices --> + <path name="three-mic"> + <path name="speaker-tmic" /> + </path> + + <path name="speaker-tmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="voice-speaker-tmic"> + <path name="speaker-tmic" /> + </path> + + <!-- Quad MIC devices --> + + <path name="handset-single-amic-dual-adc-hdr"> + <ctl name="TX DEC1 MUX" value="SWR_MIC"/> + <ctl name="TX DEC2 MUX" value="SWR_MIC"/> + <ctl name="TX DEC3 MUX" value="SWR_MIC"/> + <ctl name="TX DEC4 MUX" value="SWR_MIC"/> + <ctl name="TX SMIC MUX1" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX2" value="SWR_MIC5"/> + <ctl name="TX SMIC MUX3" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX4" value="SWR_MIC5"/> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1"/> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1"/> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2"/> + <ctl name="HDR12 MUX" value="HDR12"/> + <ctl name="ADC1_MIXER Switch" value="1"/> + <ctl name="ADC2_MIXER Switch" value="1"/> + <ctl name="TX1 MODE" value="ADC_LP"/> + <ctl name="TX0 MODE" value="ADC_LP"/> + <ctl name="TX_DEC1 Volume" value="84"/> + <ctl name="TX_DEC2 Volume" value="84"/> + <ctl name="TX_DEC3 Volume" value="84"/> + <ctl name="TX_DEC4 Volume" value="84"/> + <ctl name="ADC1 Volume" value="16"/> + <ctl name="ADC2 Volume" value="0"/> + <ctl name="AMIC1_MIXER Switch" value="1"/> + </path> + + <path name="unprocessed-hdr-mic-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <path name="handset" /> + </path> + + + <path name="voice-tty-hco-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="amic2" /> + <ctl name="ADC2 Volume" value="0" /> + <ctl name="TX_DEC5 Volume" value="84" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <ctl name="TX DEC6 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX6" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="dmic3" /> + </path> + + <path name="unprocessed-handset-mic"> + <path name="handset-mic" /> + </path> + + <path name="unprocessed-mic"> + <path name="unprocessed-handset-mic" /> + </path> + + <path name="unprocessed-stereo-mic"> + <path name="voice-rec-dmic-ef" /> + </path> + + <path name="unprocessed-three-mic"> + <path name="three-mic" /> + </path> + + <path name="unprocessed-headset-mic"> + <path name="headset-mic" /> + </path> + +</mixer> diff --git a/configs/parrot/parrot.mk b/configs/parrot/parrot.mk new file mode 100644 index 00000000..0f9cd1b3 --- /dev/null +++ b/configs/parrot/parrot.mk @@ -0,0 +1,613 @@ +#BOARD_USES_GENERIC_AUDIO := true +# +#AUDIO_FEATURE_FLAGS +ifeq ($(TARGET_USES_QMAA_OVERRIDE_AUDIO), false) +ifeq ($(TARGET_USES_QMAA),true) +AUDIO_USE_STUB_HAL := true +endif +endif + +ifneq ($(AUDIO_USE_STUB_HAL), true) +BOARD_USES_ALSA_AUDIO := true +TARGET_USES_AOSP_FOR_AUDIO := false + +ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true) +USE_CUSTOM_AUDIO_POLICY := 1 +AUDIO_FEATURE_QSSI_COMPLIANCE := true +AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false +AUDIO_FEATURE_ENABLED_COMPRESS_INPUT := true +AUDIO_FEATURE_ENABLED_CONCURRENT_CAPTURE := true +AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false +AUDIO_FEATURE_ENABLED_DYNAMIC_ECNS := true +AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true +AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true +AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true +AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true +AUDIO_FEATURE_ENABLED_HDMI_SPK := true +AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true +AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true +AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true +AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true +AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true +AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true +AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true +AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true +AUDIO_FEATURE_ENABLED_MPEGH_SW_DECODER := true +AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true +AUDIO_FEATURE_ENABLED_SSR := true +AUDIO_FEATURE_ENABLED_DTS_EAGLE := false +AUDIO_FEATURE_ENABLED_PAL_HIDL := true +AUDIO_FEATURE_ENABLED_LSM_HIDL := true +BOARD_USES_SRS_TRUEMEDIA := false +DTS_CODEC_M_ := false +MM_AUDIO_ENABLED_SAFX := false +AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false +AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true +AUDIO_FEATURE_ENABLED_USB_TUNNEL := true +AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true +AUDIO_FEATURE_ENABLED_3D_AUDIO := true +AUDIO_FEATURE_ENABLED_AHAL_EXT := false +AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true +DOLBY_ENABLE := false +endif + +AUDIO_FEATURE_ENABLED_DLKM := true +BOARD_SUPPORTS_SOUND_TRIGGER := true +BOARD_SUPPORTS_GCS := false +AUDIO_FEATURE_ENABLED_INSTANCE_ID := true +AUDIO_USE_DEEP_AS_PRIMARY_OUTPUT := false +AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true +AUDIO_FEATURE_ENABLED_NT_PAUSE_TIMEOUT := true +AUDIO_FEATURE_ENABLED_ANC_HEADSET := true +AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true +AUDIO_FEATURE_ENABLED_FLUENCE := true +AUDIO_FEATURE_ENABLED_HDMI_EDID := true +AUDIO_FEATURE_ENABLED_HDMI_PASSTHROUGH := true +#AUDIO_FEATURE_ENABLED_KEEP_ALIVE := true +AUDIO_FEATURE_ENABLED_DISPLAY_PORT := true +AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false +AUDIO_FEATURE_ENABLED_HFP := true +AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true +AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true +AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true +AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true +AUDIO_FEATURE_ENABLED_ACDB_LICENSE := false +AUDIO_FEATURE_ENABLED_DEV_ARBI := false +AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := true +MM_AUDIO_ENABLED_FTM := true +TARGET_USES_QCOM_MM_AUDIO := true +AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true +AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true +BOARD_SUPPORTS_QAHW := false +AUDIO_FEATURE_ENABLED_RAS := true +AUDIO_FEATURE_ENABLED_SND_MONITOR := true +AUDIO_FEATURE_ENABLED_USB_BURST_MODE := true +AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true +AUDIO_FEATURE_ENABLED_BATTERY_LISTENER := true +BUILD_AUDIO_TECHPACK_SOURCE := true +AUDIO_FEATURE_ENABLED_MCS := true +##AUDIO_FEATURE_FLAGS +#AGM +AUDIO_AGM := libagmclient +AUDIO_AGM += libagmservice +AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-impl +AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-service +AUDIO_AGM += vendor.qti.hardware.AGMIPC@1.0-service.rc +AUDIO_AGM += libagm +AUDIO_AGM += agmplay +AUDIO_AGM += agmcap +AUDIO_AGM += libagmmixer +AUDIO_AGM += agmcompressplay +AUDIO_AGM += libagm_mixer_plugin +AUDIO_AGM += libagm_pcm_plugin +AUDIO_AGM += libagm_compress_plugin + +#PAL Service +AUDIO_PAL += libpalclient +AUDIO_PAL += vendor.qti.hardware.pal@1.0-impl + +#PAL Module +AUDIO_PAL := libar-pal +AUDIO_PAL += lib_bt_bundle +AUDIO_PAL += lib_bt_aptx +AUDIO_PAL += lib_bt_ble +AUDIO_PAL += catf +AUDIO_PAL += PalTest + +BOARD_SUPPORTS_OPENSOURCE_STHAL := true + +AUDIO_HARDWARE := audio.a2dp.default +AUDIO_HARDWARE += audio.usb.default +AUDIO_HARDWARE += audio.r_submix.default +AUDIO_HARDWARE += audio.primary.$(TARGET_BOARD_PLATFORM) + +#HAL Wrapper +AUDIO_WRAPPER := libqahw +AUDIO_WRAPPER += libqahwwrapper + +# C2 Audio +AUDIO_C2 := libqc2audio_base +AUDIO_C2 += libqc2audio_utils +AUDIO_C2 += libqc2audio_platform +AUDIO_C2 += libqc2audio_core +AUDIO_C2 += libqc2audio_basecodec +AUDIO_C2 += libqc2audio_hooks +AUDIO_C2 += libqc2audio_swaudiocodec +AUDIO_C2 += libqc2audio_swaudiocodec_data_common +AUDIO_C2 += libqc2audio_hwaudiocodec +AUDIO_C2 += libqc2audio_hwaudiocodec_data_common +AUDIO_C2 += vendor.qti.media.c2audio@1.0-service +AUDIO_C2 += qc2audio_test +AUDIO_C2 += libEvrcSwCodec +AUDIO_C2 += libQcelp13SwCodec + +#HAL Test app +AUDIO_HAL_TEST_APPS := hal_play_test +AUDIO_HAL_TEST_APPS += hal_rec_test + +PRODUCT_PACKAGES += $(AUDIO_HARDWARE) +PRODUCT_PACKAGES += $(AUDIO_WRAPPER) +PRODUCT_PACKAGES += $(AUDIO_HAL_TEST_APPS) +PRODUCT_PACKAGES += ftm_test_config_parrot-qrd-snd-card +PRODUCT_PACKAGES += ftm_test_config_parrot-idp-snd-card +PRODUCT_PACKAGES += ftm_test_config_parrot-qrd-sku1-snd-card +PRODUCT_PACKAGES += ftm_test_config_parrot-idp-sku1-snd-card +PRODUCT_PACKAGES += audioadsprpcd +PRODUCT_PACKAGES += vendor.qti.audio-adsprpc-service.rc +PRODUCT_PACKAGES += android.hardware.audio.service_64 +PRODUCT_PACKAGES += android.hardware.audio.service_64.rc +PRODUCT_PACKAGES += IDP_acdb_cal.acdb +PRODUCT_PACKAGES += IDP_workspaceFileXml.qwsp +PRODUCT_PACKAGES += QRD_acdb_cal.acdb +PRODUCT_PACKAGES += QRD_workspaceFileXml.qwsp +PRODUCT_PACKAGES += IDP_parrot_sku1_acdb_cal.acdb +PRODUCT_PACKAGES += IDP_parrot_sku1_workspaceFileXml.qwsp +PRODUCT_PACKAGES += QRD_parrot_sku1_acdb_cal.acdb +PRODUCT_PACKAGES += QRD_parrot_sku1_workspaceFileXml.qwsp +PRODUCT_PACKAGES += IDP_UPD_acdb_cal.acdb +PRODUCT_PACKAGES += IDP_UPD_workspaceFileXml.qwsp +PRODUCT_PACKAGES += fai__2.3.0_0.1__3.0.0_0.0__eai_1.10.pmd +PRODUCT_PACKAGES += fai__2.3.0_0.1__3.0.0_0.0__eai_1.36_enpu2_comp.pmd +PRODUCT_PACKAGES += fai__2.0.0_0.1__3.0.0_0.0__eai_1.36_enpu2.pmd +PRODUCT_PACKAGES += fai__2.7.2_0.0__3.0.0_0.0__eai_1.36_enpu2.pmd +PRODUCT_PACKAGES += fai__2.7.20_0.0__3.0.0_0.0__eai_1.36_enpu2.pmd +PRODUCT_PACKAGES += fai__3.0.0_0.0__eai_1.36_enpu2.pmd +PRODUCT_PACKAGES += libfmpal +PRODUCT_PACKAGES += event.eai +PRODUCT_PACKAGES += music.eai +PRODUCT_PACKAGES += speech.eai +PRODUCT_PACKAGES += libqtigefar +ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MCS)), true) +PRODUCT_PACKAGES += libmcs +endif + +ifneq ($(strip $(TARGET_USES_RRO)), true) +#Audio Specific device overlays +DEVICE_PACKAGE_OVERLAYS += vendor/qcom/opensource/audio-hal/primary-hal/configs/common/overlay +endif +PRODUCT_PACKAGES += $(AUDIO_AGM) +PRODUCT_PACKAGES += $(AUDIO_PAL) +PRODUCT_PACKAGES += $(AUDIO_C2) + +# Audio configuration xml's related to Waipio +#QCV_FAMILY_SKUS := taro +#DEVICE_SKU := taro + +CONFIG_PAL_SRC_DIR := vendor/qcom/opensource/pal/configs/parrot +CONFIG_HAL_SRC_DIR := vendor/qcom/opensource/audio-hal/primary-hal/configs/parrot +#CONFIG_SKU_OUT_DIR := $(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_$(DEVICE_SKU) +CONFIG_SKU_OUT_DIR := $(TARGET_COPY_OUT_VENDOR)/etc/ + +PRODUCT_COPY_FILES += \ + $(CONFIG_HAL_SRC_DIR)/audio_effects.conf:$(CONFIG_SKU_OUT_DIR)/audio_effects.conf \ + $(CONFIG_HAL_SRC_DIR)/audio_effects.xml:$(CONFIG_SKU_OUT_DIR)/audio_effects.xml \ + $(CONFIG_HAL_SRC_DIR)/card-defs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/card-defs.xml \ + $(CONFIG_HAL_SRC_DIR)/microphone_characteristics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/microphone_characteristics.xml \ + $(CONFIG_HAL_SRC_DIR)/mixer_paths_parrot_qrd.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_parrot_qrd.xml \ + $(CONFIG_HAL_SRC_DIR)/mixer_paths_parrot_idp.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_parrot_idp.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_parrot_qrd.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_parrot_qrd.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_parrot_idp.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_parrot_idp.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_upd.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_upd.xml \ + $(CONFIG_HAL_SRC_DIR)/mixer_paths_parrot_qrd_sku1.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_parrot_qrd_sku1.xml \ + $(CONFIG_HAL_SRC_DIR)/mixer_paths_parrot_idp_sku1.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_parrot_idp_sku1.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_parrot_idp_sku1.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_parrot_idp_sku1.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_parrot_qrd_sku1.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_parrot_qrd_sku1.xml \ + $(CONFIG_PAL_SRC_DIR)/usecaseKvManager.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usecaseKvManager.xml \ + vendor/qcom/opensource/audio-hal/primary-hal/configs/common/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \ + frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \ + frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml + + +#Audio configuration xml's common to Parrot family +PRODUCT_COPY_FILES += \ + $(CONFIG_HAL_SRC_DIR)/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml + +PRODUCT_COPY_FILES += \ + $(TOPDIR)frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \ + $(TOPDIR)frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ + $(TOPDIR)frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ + $(TOPDIR)frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ + $(TOPDIR)frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/bluetooth_qti_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_qti_audio_policy_configuration.xml \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/bluetooth_qti_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_qti_hearing_aid_audio_policy_configuration.xml + +PRODUCT_COPY_FILES += \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/codec2/media_codecs_c2_audio.xml:vendor/etc/media_codecs_c2_audio.xml \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/codec2/service/1.0/c2audio.vendor.base-arm.policy:vendor/etc/seccomp_policy/c2audio.vendor.base-arm.policy \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/codec2/service/1.0/c2audio.vendor.base-arm64.policy:vendor/etc/seccomp_policy/c2audio.vendor.base-arm64.policy \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/codec2/service/1.0/c2audio.vendor.ext-arm.policy:vendor/etc/seccomp_policy/c2audio.vendor.ext-arm.policy \ + $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/common/codec2/service/1.0/c2audio.vendor.ext-arm64.policy:vendor/etc/seccomp_policy/c2audio.vendor.ext-arm64.policy + +# Reduce client buffer size for fast audio output tracks +PRODUCT_PROPERTY_OVERRIDES += \ + af.fast_track_multiplier=1 + +# Reduce AF standby time for playback threads (except offload) +PRODUCT_PROPERTY_OVERRIDES += \ + ro.audio.flinger_standbytime_ms=2000 + +# Low latency audio buffer size in frames +PRODUCT_PROPERTY_OVERRIDES += \ + vendor.audio_hal.period_size=192 + +# period multiplier for low latency capture tracks +PRODUCT_PROPERTY_OVERRIDES += \ + vendor.audio.ull_record_period_multiplier=2 + +##Ambisonic Capture +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.ambisonic.capture=false \ +persist.vendor.audio.ambisonic.auto.profile=false + +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.apptype.multirec.enabled=false + +##fluencetype can be "fluence" or "fluencepro" or "none" +PRODUCT_PROPERTY_OVERRIDES += \ +ro.vendor.audio.sdk.fluencetype=none\ +persist.vendor.audio.fluence.voicecall=true\ +persist.vendor.audio.fluence.voicerec=false\ +persist.vendor.audio.fluence.speaker=true\ +persist.vendor.audio.fluence.tmic.enabled=false + +# +#snapdragon value add features +# +PRODUCT_PROPERTY_OVERRIDES += \ +ro.qc.sdk.audio.ssr=false + +##fluencetype can be "fluence" or "fluencepro" or "none" +PRODUCT_PROPERTY_OVERRIDES += \ +ro.qc.sdk.audio.fluencetype=none\ +persist.audio.fluence.voicecall=true\ +persist.audio.fluence.voicerec=false\ +persist.audio.fluence.speaker=true + +##speaker protection v3 switch and ADSP AFE API version +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.spv3.enable=true\ +persist.vendor.audio.avs.afe_api_version=2 + +#disable tunnel encoding +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.tunnel.encode=false + +#Disable RAS Feature by default +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.ras.enabled=false + +#Buffer size in kbytes for compress offload playback +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.buffer.size.kb=32 + +#Enable offload audio video playback by default +PRODUCT_PROPERTY_OVERRIDES += \ +audio.offload.video=true + +#Enable audio track offload by default +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.track.enable=true + +#Enable music through deep buffer +PRODUCT_PROPERTY_OVERRIDES += \ +audio.deep_buffer.media=true + +#enable voice path for PCM VoIP by default +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.voice.path.for.pcm.voip=true + +#Enable multi channel aac through offload +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.multiaac.enable=true + +#Enable DS2, Hardbypass feature for Dolby +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.dolby.ds2.enabled=false\ +vendor.audio.dolby.ds2.hardbypass=false + +#Disable Multiple offload sesison +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.multiple.enabled=false + +#Disable Compress passthrough playback +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.passthrough=false + +#Disable surround sound recording +PRODUCT_PROPERTY_OVERRIDES += \ +ro.vendor.audio.sdk.ssr=false + +#enable dsp gapless mode by default +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.offload.gapless.enabled=true + +#enable pbe effects +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.safx.pbe.enabled=false + +#parser input buffer size(256kb) in byte stream mode +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.parser.ip.buffer.size=262144 + +#flac sw decoder 24 bit decode capability +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.flac.sw.decoder.24bit=true + +#timeout crash duration set to 20sec before system is ready. +#timeout duration updates to default timeout of 5sec once the system is ready. +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.hal.boot.timeout.ms=20000 + +#split a2dp DSP supported encoder list +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac + +# A2DP offload support +PRODUCT_PROPERTY_OVERRIDES += \ +ro.bluetooth.a2dp_offload.supported=true + +# Disable A2DP offload +PRODUCT_PROPERTY_OVERRIDES += \ +persist.bluetooth.a2dp_offload.disabled=false + +# A2DP offload DSP supported encoder list +PRODUCT_PROPERTY_OVERRIDES += \ +persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac + +#enable software decoders for ALAC and APE +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.use.sw.alac.decoder=true +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.use.sw.ape.decoder=true + +#enable software decoder for MPEG-H +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.use.sw.mpegh.decoder=true + +#disable hw aac encoder by default in AR +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.hw.aac.encoder=false + +#audio becoming noisy intent broadcast delay +PRODUCT_PROPERTY_OVERRIDES += \ +audio.sys.noisy.broadcast.delay=600 + +#offload pausetime out duration to 3 secs to inline with other outputs +PRODUCT_PROPERTY_OVERRIDES += \ +audio.sys.offload.pstimeout.secs=3 + +#Set AudioFlinger client heap size +PRODUCT_PROPERTY_OVERRIDES += \ +ro.af.client_heap_size_kbyte=7168 + +#Set HAL buffer size to samples equal to 3 ms +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio_hal.in_period_size=144 + +#Set HAL buffer size to 3 ms +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio_hal.period_multiplier=3 + +#ADM Buffering size in ms +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.adm.buffering.ms=2 + +#enable headset calibration +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.volume.headset.gain.depcal=true + +#enable dualmic fluence for voice communication +PRODUCT_PROPERTY_OVERRIDES += \ +persist.audio.fluence.voicecomm=true + +#enable c2 based encoders/decoders as default NT decoders/encoders +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.c2.preferred=true + +#Enable dmaBuf heap usage by C2 components +PRODUCT_PROPERTY_OVERRIDES += \ +debug.c2.use_dmabufheaps=1 + +#Enable C2 suspend +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.qc2audio.suspend.enabled=true + +#Enable qc2 audio sw flac frame decode +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.qc2audio.per_frame.flac.dec.enabled=true + +ifneq ($(GENERIC_ODM_IMAGE),true) +$(warning "Enabling codec2.0 SW only for non-generic odm build variant") +#Rank OMX SW codecs lower than OMX HW codecs +PRODUCT_PROPERTY_OVERRIDES += debug.stagefright.omx_default_rank=0 +endif +endif + +USE_XML_AUDIO_POLICY_CONF := 1 + +#enable keytone FR +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.hal.output.suspend.supported=true + +#Enable AAudio MMAP/NOIRQ data path +#2 is AAUDIO_POLICY_AUTO so it will try MMAP then fallback to Legacy path +PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_policy=2 +#Allow EXCLUSIVE then fall back to SHARED. +PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_exclusive_policy=2 +PRODUCT_PROPERTY_OVERRIDES += aaudio.hw_burst_min_usec=2000 + + +#enable mirror-link feature +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.enable.mirrorlink=false + +#enable voicecall speaker stereo +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.voicecall.speaker.stereo=true + +#enable AAC frame ctl for A2DP sinks +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.bt.aac_frm_ctl.enabled=true + +#enable VBR frame ctl +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.bt.aac_vbr_frm_ctl.enabled=true + +#enable dedicated proxy for hearing aid +PRODUCT_PROPERTY_OVERRIDES += \ +persist.vendor.audio.ha_proxy.enabled=true + +#add dynamic feature flags here +PRODUCT_PROPERTY_OVERRIDES += \ +vendor.audio.feature.a2dp_offload.enable=true \ +vendor.audio.feature.afe_proxy.enable=true \ +vendor.audio.feature.anc_headset.enable=false \ +vendor.audio.feature.battery_listener.enable=true \ +vendor.audio.feature.compr_cap.enable=false \ +vendor.audio.feature.compress_in.enable=true \ +vendor.audio.feature.compress_meta_data.enable=true \ +vendor.audio.feature.compr_voip.enable=false \ +vendor.audio.feature.concurrent_capture.enable=true \ +vendor.audio.feature.custom_stereo.enable=true \ +vendor.audio.feature.display_port.enable=true \ +vendor.audio.feature.dsm_feedback.enable=false \ +vendor.audio.feature.dynamic_ecns.enable=true \ +vendor.audio.feature.ext_hw_plugin.enable=false \ +vendor.audio.feature.external_dsp.enable=false \ +vendor.audio.feature.external_speaker.enable=false \ +vendor.audio.feature.external_speaker_tfa.enable=false \ +vendor.audio.feature.fluence.enable=true \ +vendor.audio.feature.fm.enable=true \ +vendor.audio.feature.hdmi_edid.enable=true \ +vendor.audio.feature.hdmi_passthrough.enable=true \ +vendor.audio.feature.hfp.enable=true \ +vendor.audio.feature.hifi_audio.enable=false \ +vendor.audio.feature.hwdep_cal.enable=false \ +vendor.audio.feature.incall_music.enable=true \ +vendor.audio.feature.multi_voice_session.enable=true \ +vendor.audio.feature.keep_alive.enable=true \ +vendor.audio.feature.kpi_optimize.enable=true \ +vendor.audio.feature.maxx_audio.enable=false \ +vendor.audio.feature.ras.enable=true \ +vendor.audio.feature.record_play_concurency.enable=false \ +vendor.audio.feature.src_trkn.enable=true \ +vendor.audio.feature.spkr_prot.enable=true \ +vendor.audio.feature.ssrec.enable=true \ +vendor.audio.feature.usb_offload.enable=true \ +vendor.audio.feature.usb_offload_burst_mode.enable=true \ +vendor.audio.feature.usb_offload_sidetone_volume.enable=false \ +vendor.audio.feature.deepbuffer_as_primary.enable=false \ +vendor.audio.feature.vbat.enable=true \ +vendor.audio.feature.wsa.enable=false \ +vendor.audio.feature.audiozoom.enable=false \ +vendor.audio.feature.snd_mon.enable=true \ +vendor.audio.feature.dmabuf.cma.memory.enable=true \ +vendor.audio.hdr.record.enable=false + + +# for HIDL related packages +PRODUCT_PACKAGES += \ + android.hardware.audio@2.0-service_64 \ + android.hardware.audio@2.0-impl \ + android.hardware.audio.effect@2.0-impl \ + android.hardware.soundtrigger@2.1-impl \ + android.hardware.audio@4.0 \ + android.hardware.audio.common@4.0 \ + android.hardware.audio.common@4.0-util \ + android.hardware.audio@4.0-impl \ + android.hardware.audio.effect@4.0 \ + android.hardware.audio.effect@4.0-impl + +# enable audio hidl hal 5.0 +PRODUCT_PACKAGES += \ + android.hardware.audio@5.0 \ + android.hardware.audio.common@5.0 \ + android.hardware.audio.common@5.0-util \ + android.hardware.audio@5.0-impl \ + android.hardware.audio.effect@5.0 \ + android.hardware.audio.effect@5.0-impl + +# enable audio hidl hal 6.0 +PRODUCT_PACKAGES += \ + android.hardware.audio@6.0 \ + android.hardware.audio.common@6.0 \ + android.hardware.audio.common@6.0-util \ + android.hardware.audio@6.0-impl \ + android.hardware.audio.effect@6.0 \ + android.hardware.audio.effect@6.0-impl + +# enable audio hidl hal 7.0 +PRODUCT_PACKAGES += \ + android.hardware.audio@7.0 \ + android.hardware.audio.common@7.0 \ + android.hardware.audio.common@7.0-util \ + android.hardware.audio@7.0-impl \ + android.hardware.audio.effect@7.0 \ + android.hardware.audio.effect@7.0-impl + +# enable sound trigger hidl hal 2.2 +PRODUCT_PACKAGES += \ + android.hardware.soundtrigger@2.2-impl \ + +# enable sound trigger hidl hal 2.3 +PRODUCT_PACKAGES += \ + android.hardware.soundtrigger@2.3-impl \ + +# enable Listen Sound Model hidl 1.0 +PRODUCT_PACKAGES += \ + vendor.qti.hardware.ListenSoundModel@1.0 \ + vendor.qti.hardware.ListenSoundModel@1.0-impl + +PRODUCT_PACKAGES_ENG += \ + VoicePrintTest \ + VoicePrintDemo + +PRODUCT_PACKAGES_DEBUG += \ + AudioSettings + +ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DEV_ARBI)),true) +PRODUCT_PACKAGES_DEBUG += \ + libaudiodevarb +endif + +ifeq ($(call is-vendor-board-platform,QCOM),true) +ifeq ($(call is-platform-sdk-version-at-least,28),true) +PRODUCT_PACKAGES_DEBUG += \ + libqti_resampler_headers \ + lib_soundmodel_headers \ + libqti_vraudio_headers +endif +ifeq ($(strip $(AUDIO_FEATURE_ENABLED_3D_AUDIO)),true) +PRODUCT_PACKAGES_DEBUG += \ + libvr_object_engine \ + libvr_amb_engine \ + libhoaeffects_csim +endif +endif + +ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true) +PRODUCT_PACKAGES_DEBUG += \ + libadpcmdec +endif + +AUDIO_FEATURE_ENABLED_GKI := true diff --git a/configs/taro/mixer_paths_diwali_parrot_qrd.xml b/configs/taro/mixer_paths_diwali_parrot_qrd.xml new file mode 100755 index 00000000..967b6489 --- /dev/null +++ b/configs/taro/mixer_paths_diwali_parrot_qrd.xml @@ -0,0 +1,1152 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted provided that the following conditions are --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<!-- --> +<!-- Changes from Qualcomm Innovation Center are provided under the following --> +<!-- license: --> +<!-- --> +<!-- Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. --> +<!-- --> +<!-- Redistribution and use in source and binary forms, with or without --> +<!-- modification, are permitted (subject to the limitations in the --> +<!-- disclaimer below) provided that the following conditions are met: --> +<!-- --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- --> +<!-- * Neither the name of Qualcomm Innovation Center, Inc. nor the names --> +<!-- of its contributors may be used to endorse or promote products --> +<!-- derived from this software without specific prior written permission.--> +<!-- --> +<!-- NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE --> +<!-- GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT --> +<!-- HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. --> +<!-- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR --> +<!-- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL --> +<!-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE --> +<!-- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS --> +<!-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER --> +<!-- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR --> +<!-- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- These are the initial mixer settings --> + + <!-- WSA controls --> + <ctl name="WSA RX0 MUX" value="ZERO" /> + <ctl name="WSA RX1 MUX" value="ZERO" /> + <ctl name="WSA_RX0 INP0" value="ZERO" /> + <ctl name="WSA_RX1 INP0" value="ZERO" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="0" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="0" /> + <ctl name="SpkrLeft COMP Switch" value="0" /> + <ctl name="SpkrRight COMP Switch" value="0" /> + <ctl name="SpkrLeft VISENSE Switch" value="0" /> + <ctl name="SpkrRight VISENSE Switch" value="0" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="0" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="0" /> + + <!-- RX Controls --> + <ctl name="RX_MACRO RX0 MUX" value="ZERO" /> + <ctl name="RX_MACRO RX1 MUX" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT0_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP0" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP1" value="ZERO" /> + <ctl name="RX INT1_1 MIX1 INP2" value="ZERO" /> + <ctl name="RX INT0 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="NORMAL_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="0" /> + <ctl name="RX_COMP2 Switch" value="0" /> + <ctl name="HPHL_COMP Switch" value="0" /> + <ctl name="HPHR_COMP Switch" value="0" /> + <ctl name="EAR_RDAC Switch" value="0" /> + <ctl name="HPHL_RDAC Switch" value="0" /> + <ctl name="HPHR_RDAC Switch" value="0" /> + <ctl name="AUX_RDAC Switch" value="0" /> + <ctl name="RX_FIR Filter" value="OFF" /> + <ctl name="RX_EAR Mode" value="OFF" /> + + <!-- TX Controls --> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="VA_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA DEC3 MUX" value="SWR_MIC" /> + <ctl name="VA DMIC MUX0" value="ZERO" /> + <ctl name="VA DMIC MUX1" value="ZERO" /> + <ctl name="VA DMIC MUX2" value="ZERO" /> + <ctl name="VA DMIC MUX3" value="ZERO" /> + <ctl name="VA SMIC MUX0" value="ZERO" /> + <ctl name="VA SMIC MUX1" value="ZERO" /> + <ctl name="VA SMIC MUX2" value="ZERO" /> + <ctl name="VA SMIC MUX3" value="ZERO" /> + <ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="LPI Enable" value="0" /> + <ctl name="ADC1_MIXER Switch" value="0" /> + <ctl name="ADC2_MIXER Switch" value="0" /> + <ctl name="ADC3_MIXER Switch" value="0" /> + <ctl name="ADC4_MIXER Switch" value="0" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="DEC0_BCS Switch" value="0" /> + <ctl name="ADC2_BCS Disable" value="0" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="VA_AMIC1_MIXER Switch" value="0" /> + <ctl name="VA_AMIC2_MIXER Switch" value="0" /> + <ctl name="VA_AMIC3_MIXER Switch" value="0" /> + <ctl name="VA_AMIC4_MIXER Switch" value="0" /> + <ctl name="AMIC1_MIXER Switch" value="0" /> + <ctl name="AMIC2_MIXER Switch" value="0" /> + <ctl name="AMIC3_MIXER Switch" value="0" /> + <ctl name="AMIC4_MIXER Switch" value="0" /> + + <ctl name="TX_AIF1_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF1_CAP Mixer DEC7" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC0" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC1" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC2" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC3" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC5" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC6" value="0" /> + <ctl name="TX_AIF2_CAP Mixer DEC7" value="0" /> + <ctl name="TX DEC0 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX0" value="ZERO" /> + <ctl name="TX SMIC MUX0" value="ZERO" /> + <ctl name="TX DEC1 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX1" value="ZERO" /> + <ctl name="TX SMIC MUX1" value="ZERO" /> + <ctl name="TX DEC2 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX2" value="ZERO" /> + <ctl name="TX SMIC MUX2" value="ZERO" /> + <ctl name="TX DEC3 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX3" value="ZERO" /> + <ctl name="TX SMIC MUX3" value="ZERO" /> + <ctl name="TX DEC4 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX4" value="ZERO" /> + <ctl name="TX SMIC MUX4" value="ZERO" /> + <ctl name="TX DEC5 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX5" value="ZERO" /> + <ctl name="TX SMIC MUX5" value="ZERO" /> + <ctl name="TX DEC6 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX6" value="ZERO" /> + <ctl name="TX SMIC MUX6" value="ZERO" /> + <ctl name="TX DEC7 MUX" value="MSM_DMIC" /> + <ctl name="TX DMIC MUX7" value="ZERO" /> + <ctl name="TX SMIC MUX7" value="ZERO" /> + <ctl name="ADC1 ChMap" value="ZERO" /> + <ctl name="ADC2 ChMap" value="ZERO" /> + <ctl name="ADC3 ChMap" value="ZERO" /> + <ctl name="ADC4 ChMap" value="ZERO" /> + + <!-- Volume controls --> + <ctl name="WSA_RX0 Digital Volume" value="84" /> + <ctl name="WSA_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX0 Digital Volume" value="84" /> + <ctl name="RX_RX1 Digital Volume" value="84" /> + <ctl name="RX_RX2 Digital Volume" value="84" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + + <ctl name="TX_DEC0 Volume" value="84" /> + <ctl name="TX_DEC1 Volume" value="84" /> + <ctl name="TX_DEC2 Volume" value="84" /> + <ctl name="TX_DEC3 Volume" value="84" /> + <ctl name="TX_DEC4 Volume" value="84" /> + <ctl name="TX_DEC5 Volume" value="84" /> + <ctl name="TX_DEC6 Volume" value="84" /> + <ctl name="TX_DEC7 Volume" value="84" /> + + <ctl name="ADC1 Volume" value="12" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="ADC3 Volume" value="12" /> + <ctl name="ADC4 Volume" value="12" /> + + <!-- Compander controls --> + <ctl name="WSA_COMP1 Switch" value="0" /> + <ctl name="WSA_COMP2 Switch" value="0" /> + + <!-- Headphone class-H mode --> + <ctl name="RX_HPH_PWR_MODE" value="ULP" /> + <ctl name="RX HPH Mode" value="CLS_H_ULP" /> + + <!-- IIR/voice anc --> + <ctl name="IIR0 Band1" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band2" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band3" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band4" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Band5" value="00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /> + <ctl name="IIR0 Enable Band1" value="0" /> + <ctl name="IIR0 Enable Band2" value="0" /> + <ctl name="IIR0 Enable Band3" value="0" /> + <ctl name="IIR0 Enable Band4" value="0" /> + <ctl name="IIR0 Enable Band5" value="0" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="ZERO" /> + <ctl name="IIR0 INP1 MUX" value="ZERO" /> + <ctl name="IIR0 INP2 MUX" value="ZERO" /> + <ctl name="IIR0 INP3 MUX" value="ZERO" /> + + <!-- vbat related data --> + <ctl name="GSM mode Enable" value="OFF" /> + <ctl name="WSA_Softclip0 Enable" value="0" /> + <ctl name="WSA_Softclip1 Enable" value="0" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="0" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="0" /> + + <!-- HIFI Filter coefficients for headphones path --> + <path name="hifi-filter-coefficients"> + <ctl name="RX0 FIR Coeff Num" value="8" /> + <ctl name="RX0 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX0 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Num" value="8" /> + <ctl name="RX1 FIR Coeff Group0" value="08 00 00 00 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + <ctl name="RX1 FIR Coeff Group1" value="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" /> + </path> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="gsm-mode"> + <ctl name="GSM mode Enable" value="ON" /> + </path> + + + <!-- These are actual sound device specific mixer settings --> + <path name="amic1"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="amic2"> + <ctl name="TX DEC0 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX0" value="SWR_MIC5" /> + <ctl name="DEC0_BCS Switch" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX1_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + + <path name="amic3"> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="amic4"> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC8" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="amic5"> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX3 MODE" value="ADC_LP" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="amic6"> + <ctl name="TX DEC4 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX4" value="SWR_MIC4" /> + <ctl name="TX_AIF2_CAP Mixer DEC4" value="1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic1"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC0" /> + </path> + + <path name="dmic2"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC1" /> + </path> + + <path name="dmic3"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC2" /> + </path> + + <path name="dmic4"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC3" /> + </path> + + <path name="dmic5"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC4" /> + </path> + + <path name="dmic6"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DMIC MUX2" value="DMIC5" /> + </path> + + <path name="speaker"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="haptics-dev"> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-2"> + <ctl name="WSA RX1 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX1 INP0" value="RX1" /> + <ctl name="WSA_COMP2 Switch" value="1" /> + <ctl name="SpkrRight COMP Switch" value="1" /> + <ctl name="SpkrRight VISENSE Switch" value="1" /> + <ctl name="SpkrRight SWR DAC_Port Switch" value="1" /> + </path> + + <path name="speaker-mono-vbat"> + <path name="speaker-mono" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="speaker-mono-2-vbat"> + <path name="speaker-mono-2" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-vbat"> + <path name="speaker" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-fluid"> + <path name="speaker-mono" /> + </path> + + <path name="speaker-liquid"> + <path name="speaker" /> + </path> + + <path name="speaker-safe"> + <path name="speaker-mono"/> + </path> + + <path name="speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-fluid-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="speaker-liquid-vbat"> + <path name="speaker-vbat" /> + </path> + + <path name="speaker-safe-vbat"> + <path name="speaker-mono-vbat"/> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR0 Enable Band1" value="1" /> + <ctl name="IIR0 Enable Band2" value="1" /> + <ctl name="IIR0 Enable Band3" value="1" /> + <ctl name="IIR0 Enable Band4" value="1" /> + <ctl name="IIR0 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC0" /> + <ctl name="RX INT0 MIX2 INP" value="SRC0" /> + <ctl name="RX INT1 MIX2 INP" value="SRC0" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR0 INP0 Volume" value="40" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + <ctl name="RX INT2 MIX2 INP" value="SRC0" /> + <ctl name="WSA_RX0 INT0 SIDETONE MIX" value="SRC0" /> + </path> + + <path name="afe-sidetone"> + <ctl name="Voice Sidetone Enable" value="1" /> + </path> + + <path name="speaker-mic"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-liquid"> + <path name="amic1" /> + </path> + + <path name="speaker-mic-sbc"> + </path> + + <path name="speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-2-protected"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-stereo-protected"> + <path name="speaker-protected" /> + </path> + + <path name="speaker-protected-vbat"> + <path name="speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-protected-vbat"> + <path name="voice-speaker-protected" /> + <ctl name="WSA_RX INT0 VBAT WSA RX0 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-2-protected-vbat"> + <path name="voice-speaker-2-protected" /> + <ctl name="WSA_RX INT1 VBAT WSA RX1 VBAT Enable" value="1" /> + </path> + + <path name="voice-speaker-stereo-protected-vbat"> + <path name="speaker-protected-vbat" /> + </path> + + <path name="vi-feedback"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="vi-feedback-mono-1"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_1" value="1" /> + </path> + + <path name="vi-feedback-mono-2"> + <ctl name="WSA_AIF_VI Mixer WSA_SPKR_VI_2" value="1" /> + </path> + + <path name="handset"> + <ctl name="WSA RX0 MUX" value="AIF1_PB" /> + <ctl name="WSA_RX0 INP0" value="RX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + </path> + + <path name="handset-mic"> + <path name="amic3" /> + </path> + + <path name="ultrasound-handset"> + <ctl name="WSA RX_MIX0 MUX" value="AIF_MIX1_PB" /> + <ctl name="WSA_RX0 MIX INP" value="RX_MIX0" /> + <ctl name="WSA_COMP1 Switch" value="1" /> + <ctl name="SpkrLeft COMP Switch" value="1" /> + <ctl name="SpkrLeft VISENSE Switch" value="1" /> + <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" /> + <ctl name="EAR SPKR PA Gain" value="G_6_DB" /> + </path> + + <path name="ultrasound-mic"> + <path name="amic6" /> + </path> + + <path name="headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + </path> + + <path name="headphones-and-haptics"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX_MACRO RX1 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT1_1 MIX1 INP0" value="RX1" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="RX_COMP2 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHR_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + <ctl name="HPHR_RDAC Switch" value="1" /> + <ctl name="SWR DAC_Port Switch" value="1" /> + </path> + + <path name="headphones-44.1"> + <path name="headphones" /> + </path> + + <path name="headphones-hifi-filter"> + <ctl name="RX_FIR Filter" value="ON" /> + <path name="headphones" /> + </path> + + <path name="line"> + <path name="headphones" /> + </path> + + <path name="headset-mic"> + <ctl name="TX_DEC0 Volume" value="84" /> + <path name="amic2" /> + </path> + + <path name="headset-mic-liquid"> + <path name="amic2" /> + </path> + + <path name="voice-handset"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-handset-hac"> + <path name="handset" /> + </path> + + <path name="voice-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus-hdk"> + <path name="handset" /> + </path> + + <path name="voice-speaker"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-stereo"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker" /> + </path> + + <path name="voice-speaker-2"> + <path name="speaker-mono-2" /> + </path> + + <path name="voice-speaker-hdk"> + <path name="speaker-mono" /> + </path> + + <path name="voice-speaker-fluid"> + <path name="speaker-fluid" /> + </path> + + <path name="voice-speaker-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-stereo-vbat"> + <ctl name="WSA_RX0 Digital Volume" value="60" /> + <path name="speaker-vbat" /> + </path> + + <path name="voice-speaker-2-vbat"> + <path name="speaker-mono-2-vbat" /> + </path> + + <path name="voice-speaker-hdk-vbat"> + <path name="speaker-mono-vbat" /> + </path> + + <path name="voice-speaker-fluid-vbat"> + <path name="speaker-fluid-vbat" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + </path> + + <path name="voice-headset"> + <path name="headphones" /> + </path> + + <path name="voice-line"> + <path name="voice-headphones" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-headphones-hifi-filter"> + <path name="headphones-hifi-filter" /> + <path name="speaker" /> + </path> + + <path name="speaker-safe-and-headphones"> + <path name="headphones" /> + <path name="speaker-safe" /> + </path> + + <path name="speaker-and-line"> + <path name="speaker-and-headphones" /> + </path> + + <path name="speaker-and-headphones-liquid"> + <path name="headphones" /> + <path name="speaker" /> + </path> + + <path name="speaker-and-line-liquid"> + <path name="speaker-and-headphones-liquid" /> + </path> + + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="va-mic-mono"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-dmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC5" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + </path> + + <path name="va-mic-tmic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA DEC1 MUX" value="SWR_MIC" /> + <ctl name="VA DEC2 MUX" value="SWR_MIC" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA_DEC2 MODE" value="ADC_LOW_PWR" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC4" /> + <ctl name="VA SMIC MUX1" value="SWR_MIC8" /> + <ctl name="VA SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC1_MIXER Switch" value="1" /> + <ctl name="VA_AMIC3_MIXER Switch" value="1" /> + <ctl name="VA_AMIC4_MIXER Switch" value="1" /> + </path> + + <path name="va-mic"> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-mono-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-mono" /> + </path> + + <path name="va-mic-dmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-dmic" /> + </path> + + <path name="va-mic-tmic-lpi"> + <ctl name="LPI Enable" value="1" /> + <path name="va-mic-tmic" /> + </path> + + <path name="va-mic-lpi"> + <path name="va-mic-mono-lpi" /> + </path> + + <path name="headset-va-mic-lpi"> + <ctl name="LPI Enable" value="1" /> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="headset-va-mic"> + <ctl name="VA_AIF1_CAP Mixer DEC0" value="1" /> + <ctl name="VA DEC0 MUX" value="SWR_MIC" /> + <ctl name="VA SMIC MUX0" value="SWR_MIC5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="VA_AMIC2_MIXER Switch" value="1" /> + </path> + + <!-- Dual MIC devices --> + <path name="handset-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="speaker-dmic-endfire"> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC5" value="1" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC5 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX5" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-endfire"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="dmic-endfire-liquid"> + <path name="handset-dmic-endfire" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="hearing-aid-mic"> + <path name="voice-speaker-mic"/> + </path> + + <path name="handset-stereo-dmic-ef-liquid"> + <path name="handset-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef-liquid"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-liquid-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-speaker-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="voice-rec-dmic-ef-fluence-liquid"> + <path name="dmic-endfire-liquid" /> + </path> + + <path name="speaker-dmic-broadside"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC8" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="ADC3 MUX" value="INP4" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC3_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="AMIC4_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + </path> + + <path name="dmic-broadside"> + <path name="speaker-dmic-broadside" /> + <ctl name="IIR0 INP0 MUX" value="DEC2" /> + </path> + + <path name="voice-speaker-dmic-broadside"> + <path name="dmic-broadside" /> + </path> + + <!-- Tri MIC devices --> + <path name="three-mic"> + <path name="speaker-tmic" /> + </path> + + <path name="speaker-tmic"> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1" /> + <ctl name="TX DEC1 MUX" value="SWR_MIC" /> + <ctl name="TX DEC2 MUX" value="SWR_MIC" /> + <ctl name="TX DEC3 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX1" value="SWR_MIC5" /> + <ctl name="TX SMIC MUX2" value="SWR_MIC4" /> + <ctl name="TX SMIC MUX3" value="SWR_MIC9" /> + <ctl name="ADC2 MUX" value="INP3" /> + <ctl name="HDR34 MUX" value="NO_HDR34" /> + <ctl name="ADC2_BCS Disable" value="1" /> + <ctl name="ADC4 MUX" value="INP5" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="TX0 MODE" value="ADC_LP" /> + <ctl name="TX2 MODE" value="ADC_LP" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" /> + <ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="ADC1_MIXER Switch" value="1" /> + <ctl name="ADC4_MIXER Switch" value="1" /> + <ctl name="AMIC3_MIXER Switch" value="1" /> + <ctl name="AMIC1_MIXER Switch" value="1" /> + <ctl name="AMIC5_MIXER Switch" value="1" /> + </path> + + <path name="voice-speaker-tmic"> + <path name="speaker-tmic" /> + </path> + + <!-- Quad MIC devices --> + + <path name="handset-single-amic-dual-adc-hdr"> + <ctl name="TX DEC1 MUX" value="SWR_MIC"/> + <ctl name="TX DEC2 MUX" value="SWR_MIC"/> + <ctl name="TX DEC3 MUX" value="SWR_MIC"/> + <ctl name="TX DEC4 MUX" value="SWR_MIC"/> + <ctl name="TX SMIC MUX1" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX2" value="SWR_MIC5"/> + <ctl name="TX SMIC MUX3" value="SWR_MIC4"/> + <ctl name="TX SMIC MUX4" value="SWR_MIC5"/> + <ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC2" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC3" value="1"/> + <ctl name="TX_AIF1_CAP Mixer DEC4" value="1"/> + <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1"/> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2"/> + <ctl name="HDR12 MUX" value="HDR12"/> + <ctl name="ADC1_MIXER Switch" value="1"/> + <ctl name="ADC2_MIXER Switch" value="1"/> + <ctl name="TX1 MODE" value="ADC_LP"/> + <ctl name="TX0 MODE" value="ADC_LP"/> + <ctl name="TX_DEC1 Volume" value="84"/> + <ctl name="TX_DEC2 Volume" value="84"/> + <ctl name="TX_DEC3 Volume" value="84"/> + <ctl name="TX_DEC4 Volume" value="84"/> + <ctl name="ADC1 Volume" value="16"/> + <ctl name="ADC2 Volume" value="0"/> + <ctl name="AMIC1_MIXER Switch" value="1"/> + </path> + + <path name="unprocessed-hdr-mic-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-landscape"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <path name="unprocessed-hdr-mic-inverted-portrait"> + <path name="handset-single-amic-dual-adc-hdr" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> + <ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> + <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> + <ctl name="RX_COMP1 Switch" value="1" /> + <ctl name="HPHL_COMP Switch" value="1" /> + <ctl name="HPHL_RDAC Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headset"> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <path name="handset" /> + </path> + + + <path name="voice-tty-hco-handset-hdk"> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="amic2" /> + <ctl name="ADC2 Volume" value="0" /> + <ctl name="TX_DEC5 Volume" value="84" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <ctl name="TX DEC6 MUX" value="SWR_MIC" /> + <ctl name="TX SMIC MUX6" value="SWR_MIC5" /> + <ctl name="TX_AIF1_CAP Mixer DEC6" value="1" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" /> + <ctl name="MBHC ChMap" value="SWRM_TX3_CH3" /> + <ctl name="TX1 MODE" value="ADC_LP" /> + <ctl name="BCS Channel" value="CH10" /> + <ctl name="HDR12 MUX" value="NO_HDR12" /> + <ctl name="ADC2_MIXER Switch" value="1" /> + <ctl name="AMIC2_MIXER Switch" value="1" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="dmic3" /> + </path> + + <path name="unprocessed-handset-mic"> + <path name="handset-mic" /> + </path> + + <path name="unprocessed-mic"> + <path name="unprocessed-handset-mic" /> + </path> + + <path name="unprocessed-stereo-mic"> + <path name="voice-rec-dmic-ef" /> + </path> + + <path name="unprocessed-three-mic"> + <path name="three-mic" /> + </path> + + <path name="unprocessed-headset-mic"> + <path name="headset-mic" /> + </path> + +</mixer> diff --git a/configs/taro/taro.mk b/configs/taro/taro.mk index 86e42e99..de8e5424 100644 --- a/configs/taro/taro.mk +++ b/configs/taro/taro.mk @@ -154,6 +154,7 @@ PRODUCT_PACKAGES += ftm_test_config_diwali-idp-snd-card PRODUCT_PACKAGES += ftm_test_config_diwali-qrd-snd-card PRODUCT_PACKAGES += ftm_test_config_diwali-idp-sku1-snd-card PRODUCT_PACKAGES += ftm_test_config_diwali-qrd-sku1-snd-card +PRODUCT_PACKAGES += ftm_test_config_diwali-parrot-qrd-snd-card PRODUCT_PACKAGES += audioadsprpcd PRODUCT_PACKAGES += vendor.qti.audio-adsprpc-service.rc PRODUCT_PACKAGES += android.hardware.audio.service_64 @@ -176,6 +177,8 @@ PRODUCT_PACKAGES += IDP_diwali_sku1_acdb_cal.acdb PRODUCT_PACKAGES += IDP_diwali_sku1_workspaceFileXml.qwsp PRODUCT_PACKAGES += QRD_diwali_sku1_acdb_cal.acdb PRODUCT_PACKAGES += QRD_diwali_sku1_workspaceFileXml.qwsp +PRODUCT_PACKAGES += QRD_diwali_parrot_acdb_cal.acdb +PRODUCT_PACKAGES += QRD_diwali_parrot_workspaceFileXml.qwsp PRODUCT_PACKAGES += fai__2.3.0_0.1__3.0.0_0.0__eai_1.10.pmd PRODUCT_PACKAGES += fai__2.3.0_0.1__3.0.0_0.0__eai_1.36_enpu2_comp.pmd PRODUCT_PACKAGES += fai__2.0.0_0.1__3.0.0_0.0__eai_1.36_enpu2.pmd @@ -311,7 +314,9 @@ PRODUCT_COPY_FILES += \ $(CONFIG_HAL_SRC_DIR)/mixer_paths_diwali_idp_sku1.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_diwali_idp_sku1.xml \ $(CONFIG_HAL_SRC_DIR)/mixer_paths_diwali_qrd_sku1.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_diwali_qrd_sku1.xml \ $(CONFIG_PAL_SRC_DIR)/resourcemanager_diwali_idp_sku1.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_diwali_idp_sku1.xml \ - $(CONFIG_PAL_SRC_DIR)/resourcemanager_diwali_qrd_sku1.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_diwali_qrd_sku1.xml + $(CONFIG_PAL_SRC_DIR)/resourcemanager_diwali_qrd_sku1.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_diwali_qrd_sku1.xml \ + $(CONFIG_HAL_SRC_DIR)/mixer_paths_diwali_qrd.xml:$(CONFIG_SKU_OUT_DIR)/mixer_paths_diwali_parrot_qrd.xml \ + $(CONFIG_PAL_SRC_DIR)/resourcemanager_diwali_qrd.xml:$(CONFIG_SKU_OUT_DIR)/resourcemanager_diwali_parrot_qrd.xml #XML Audio configuration files ifneq ($(TARGET_USES_AOSP_FOR_AUDIO), true) diff --git a/hal/AudioStream.cpp b/hal/AudioStream.cpp index d3d67079..c386a6f7 100644 --- a/hal/AudioStream.cpp +++ b/hal/AudioStream.cpp @@ -4118,26 +4118,23 @@ uint32_t StreamInPrimary::GetBufferSizeForLowLatencyRecord() { /* in bytes */ uint32_t StreamInPrimary::GetBufferSize() { struct pal_stream_attributes streamAttributes_; + size_t size = 0; + uint32_t bytes_per_period_sample = 0; streamAttributes_.type = StreamInPrimary::GetPalStreamType(flags_, config_.sample_rate); if (streamAttributes_.type == PAL_STREAM_VOIP_TX) { - return (DEFAULT_VOIP_BUF_DURATION_MS * config_.sample_rate / 1000) * + size = (DEFAULT_VOIP_BUF_DURATION_MS * config_.sample_rate / 1000) * audio_bytes_per_frame( audio_channel_count_from_in_mask(config_.channel_mask), config_.format); } else if (streamAttributes_.type == PAL_STREAM_LOW_LATENCY) { - return LOW_LATENCY_CAPTURE_PERIOD_SIZE * + size = LOW_LATENCY_CAPTURE_PERIOD_SIZE * audio_bytes_per_frame( audio_channel_count_from_in_mask(config_.channel_mask), config_.format); } else if (streamAttributes_.type == PAL_STREAM_ULTRA_LOW_LATENCY) { return GetBufferSizeForLowLatencyRecord(); - } else if (streamAttributes_.type == PAL_STREAM_DEEP_BUFFER) { - return (config_.sample_rate/ 1000) * AUDIO_CAPTURE_PERIOD_DURATION_MSEC * - audio_bytes_per_frame( - audio_channel_count_from_in_mask(config_.channel_mask), - config_.format); } else if (streamAttributes_.type == PAL_STREAM_VOICE_CALL_RECORD) { return (config_.sample_rate * AUDIO_CAPTURE_PERIOD_DURATION_MSEC/ 1000) * audio_bytes_per_frame( @@ -4154,8 +4151,24 @@ uint32_t StreamInPrimary::GetBufferSize() { audio_channel_count_from_in_mask(config_.channel_mask), config_.format); } else { - return BUF_SIZE_CAPTURE * NO_OF_BUF; - } + /* this else condition will be other stream types like deepbuffer/RAW.. */ + size = (config_.sample_rate * AUDIO_CAPTURE_PERIOD_DURATION_MSEC) /1000; + size *= audio_bytes_per_frame( + audio_channel_count_from_in_mask(config_.channel_mask), + config_.format);; + } + /* make sure the size is multiple of 32 bytes and additionally multiple of + * the frame_size (required for 24bit samples and non-power-of-2 channel counts) + * At 48 kHz mono 16-bit PCM: + * 5.000 ms = 240 frames = 15*16*1*2 = 480, a whole multiple of 32 (15) + * 3.333 ms = 160 frames = 10*16*1*2 = 320, a whole multiple of 32 (10) + * Also, make sure the size is multiple of bytes per period sample + */ + bytes_per_period_sample = audio_bytes_per_sample(config_.format) * + audio_channel_count_from_in_mask(config_.channel_mask); + size = nearest_multiple(size, lcm(32, bytes_per_period_sample)); + + return size; } int StreamInPrimary::GetInputUseCase(audio_input_flags_t halStreamFlags, audio_source_t source) |