device_google_lynx/audio/lynx/config/mixer_paths.xml
yixuanjiang 1d13e445a9 aoc: update mixer table for voice capture V2
Currently AoC always use 3ch in voice usecase
rather than using mic MAX microphone as ch count.
Modify the mask to map voice request

Bug: 316603846
Signed-off-by: yixuanjiang <yixuanjiang@google.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a5bb2e6cf0beaa5695383dde9448b6fe58ae357b)
Merged-In: Id61e5ab635e612acd9a359578ec8771a1ce00cde
Change-Id: Id61e5ab635e612acd9a359578ec8771a1ce00cde
2023-12-18 23:53:01 +00:00

882 lines
33 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2019, 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. -->
<mixer>
<!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="100"/>
<ctl name="Voice PCM Stream Wait Time in MSec" value="500"/>
<!-- Enable it when AOC is ready to trim delay and padding -->
<ctl name="Gapless Offload Enable" value="1"/>
<!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/>
<ctl name="TDM_0_RX Sample Rate" value="SR_48K" />
<ctl name="TDM_0_TX Chan" value="Four"/>
<ctl name="TDM_0_TX Format" value="S32_LE"/>
<ctl name="TDM_0_TX Sample Rate" value="SR_48K" />
<!-- Haptic setting -->
<ctl name="Haptics Source" value="PCM"/>
<ctl name="HAPTIC_RX Format" value="S32_LE"/>
<ctl name="HAPTIC_RX SlotFmt" value="S32_LE"/>
<ctl name="HAPTIC_RX Chan" value="Four"/>
<ctl name="HAPTIC_RX nSlot" value="Four"/>
<ctl name="RX Slots" id="0" value="2"/>
<ctl name="RX Slots" id="1" value="3"/>
<!-- Cirrus default 96K -->
<ctl name="Default 96K" value="0"/>
<ctl name="R Default 96K" value="0"/>
<!-- Cirrus Booster Amp TDM slot assignment-->
<!-- RX slot -->
<ctl name="ASPRX1 Slot Position" value="0"/>
<ctl name="ASPRX2 Slot Position" value="1"/>
<ctl name="R ASPRX1 Slot Position" value="1"/>
<ctl name="R ASPRX2 Slot Position" value="0"/>
<!-- TX slot -->
<ctl name="ASPTX1 Slot Position" value="0"/>
<ctl name="R ASPTX1 Slot Position" value="1"/>
<ctl name="ASPTX2 Slot Position" value="2"/>
<ctl name="R ASPTX2 Slot Position" value="3"/>
<ctl name="ASPTX3 Slot Position" value="4"/>
<ctl name="R ASPTX3 Slot Position" value="5"/>
<ctl name="ASPTX4 Slot Position" value="6"/>
<ctl name="R ASPTX4 Slot Position" value="7"/>
<!-- Cirrus Booster Amp DRE and VBST config-->
<ctl name="VBSTMON Output Switch" value="1"/>
<ctl name="R VBSTMON Output Switch" value="1"/>
<ctl name="DRE DRE Switch" value="1"/>
<ctl name="R DRE DRE Switch" value="1"/>
<!-- Cirrus Booster Amp Output Gain -->
<ctl name="AMP PCM Gain" value="17"/>
<ctl name="R AMP PCM Gain" value="17"/>
<ctl name="Digital PCM Volume" value="817"/>
<ctl name="R Digital PCM Volume" value="817"/>
<!-- Cirrus Booster Amp Power -->
<ctl name="Main AMP Enable Switch" value="0"/>
<ctl name="R Main AMP Enable Switch" value="0"/>
<!-- Cirrus Booster mode -->
<ctl name="PCM Source" value="DSP"/>
<ctl name="R PCM Source" value="DSP"/>
<ctl name="DSP1 Firmware" value="Protection"/>
<ctl name="R DSP1 Firmware" value="Protection"/>
<ctl name="DSP RX1 Source" value="ASPRX1"/>
<ctl name="DSP RX2 Source" value="ASPRX1"/>
<ctl name="R DSP RX1 Source" value="ASPRX1"/>
<ctl name="R DSP RX2 Source" value="ASPRX1"/>
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<!-- Cirrus ASP TX source -->
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<!-- Cirrus fast switch init -->
<ctl name="Fast Use Case Switch Enable" value="0" />
<ctl name="Fast Use Case Delta File" value="fast_switch5.txt" />
<ctl name="R Fast Use Case Switch Enable" value="0" />
<ctl name="R Fast Use Case Delta File" value="fast_switch5.txt" />
<!-- default EP volume -->
<ctl name="PCM Playback Switch" value="1"/>
<ctl name="PCM Playback Volume" value="10"/>
<!-- audio RX route initial/default value -->
<ctl name="TDM_0_RX Mixer EP1" value="0"/>
<ctl name="TDM_0_RX Mixer EP2" value="0"/>
<ctl name="TDM_0_RX Mixer EP3" value="0"/>
<ctl name="TDM_0_RX Mixer EP4" value="0"/>
<ctl name="TDM_0_RX Mixer EP5" value="0"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_0_RX Mixer RAW" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/>
<ctl name="TDM_1_RX Mixer EP3" value="0"/>
<ctl name="TDM_1_RX Mixer EP4" value="0"/>
<ctl name="TDM_1_RX Mixer EP5" value="0"/>
<ctl name="TDM_1_RX Mixer EP6" value="0"/>
<ctl name="TDM_1_RX Mixer EP7" value="0"/>
<ctl name="TDM_1_RX Mixer EP8" value="0"/>
<ctl name="TDM_1_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer EP1" value="0"/>
<ctl name="USB_RX Mixer EP2" value="0"/>
<ctl name="USB_RX Mixer EP3" value="0"/>
<ctl name="USB_RX Mixer EP4" value="0"/>
<ctl name="USB_RX Mixer EP5" value="0"/>
<ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="USB_RX Mixer HIFI" value="0"/>
<ctl name="USB_RX Mixer RAW" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/>
<ctl name="BT_RX Mixer EP3" value="0"/>
<ctl name="BT_RX Mixer EP4" value="0"/>
<ctl name="BT_RX Mixer EP5" value="0"/>
<ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="BT_RX Mixer RAW" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/>
<ctl name="INCALL_RX Mixer EP3" value="0"/>
<ctl name="INCALL_RX Mixer EP4" value="0"/>
<ctl name="INCALL_RX Mixer EP5" value="0"/>
<ctl name="INCALL_RX Mixer EP6" value="0"/>
<ctl name="INCALL_RX Mixer EP7" value="0"/>
<ctl name="INCALL_RX Mixer NoHost1" value="0"/>
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<!-- audio TX route initial/default value -->
<ctl name="EP1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_0_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_1_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/>
<ctl name="EP3 TX Mixer BT_TX" value="0"/>
<ctl name="EP4 TX Mixer BT_TX" value="0"/>
<ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/>
<ctl name="EP3 TX Mixer USB_TX" value="0"/>
<ctl name="EP4 TX Mixer USB_TX" value="0"/>
<ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP3 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP5 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP6 TX Mixer INCALL_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer I2S_2_TX" value="0"/>
<!-- AoC Mic setting -->
<ctl name="MIC DC Blocker" value="1" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="-40"/>
<!-- USB setting v2 -->
<ctl name="USB Bus ID v2" value="2"/>
<ctl name="USB Dev ID v2" value="2"/>
<ctl name="USB Playback EP ID v2" value="1"/>
<ctl name="USB Playback FORMAT v2" value="0"/>
<ctl name="USB Playback SR v2" value="48000"/>
<ctl name="USB Playback CH v2" value="2"/>
<ctl name="USB Playback BW v2" value="24"/>
<ctl name="USB Capture EP ID v2" value="1"/>
<ctl name="USB Capture FORMAT v2" value="0"/>
<ctl name="USB Capture SR v2" value="48000"/>
<ctl name="USB Capture CH v2" value="1"/>
<ctl name="USB Capture BW v2" value="16"/>
<ctl name="AoC Modem Downlink ASRC Mode" value="ASP_ON"/>
<ctl name="Voice Call Mic Source" value="Builtin_MIC"/>
<ctl name="Mic Spatial Module Enable" value="0"/>
<ctl name="Audio Capture Eraser Enable" value="0"/>
<!-- audio PDM mic default state -->
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="Builtin_MIC"/>
<!-- sidetone controls -->
<ctl name="Sidetone Enable" value="0"/>
<ctl name="Sidetone Volume" value="-96"/>
<ctl name="Sidetone Selected Mic" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="1"/>
<!-- IEEE 754, value is in float -->
<ctl name="Sidetone Biquad0" id="0" value="0"/>
<ctl name="Sidetone Biquad0" id="1" value="0"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="0"/>
<ctl name="Sidetone Biquad1" id="1" value="0"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="0"/>
<ctl name="Sidetone Biquad2" id="1" value="0"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="0"/>
<ctl name="Sidetone Biquad3" id="1" value="0"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="0"/>
<ctl name="Sidetone Biquad4" id="1" value="0"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Incall Capture Stream0" value="Off"/>
<ctl name="Incall Capture Stream1" value="Off"/>
<ctl name="Incall Capture Stream2" value="Off"/>
<!-- These two controls control the muting function of mics and sinks during the voice call. -->
<!-- They would be enabled by HAL. -->
<ctl name="Incall Sink Mute" value="0"/>
<ctl name="Incall Mic Mute" value="0"/>
<!-- Decoder Reference Enable is controlled in aoc_control -->
<ctl name="Decoder Reference Enable" value="0"/>
<ctl name="LVM Enable" value="0"/>
<!-- sidetone dynamic control -->
<path name="sidetone-for handset">
<!-- 1065353216 = 0x3f800000 = 1.0 -->
<ctl name="Sidetone Biquad0" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="5"/>
<ctl name="Sidetone Volume" value="-90"/>
<ctl name="Sidetone Enable" value="1"/>
</path>
<!-- audio playback dynamic route -->
<path name="deep-buffer-playbackP">
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hac-handset">
</path>
<path name="deep-buffer-playbackP bt">
<ctl name="BT_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hearing-aid">
</path>
<path name="low-latency-playbackP">
<ctl name="TDM_0_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hac-handset">
</path>
<path name="low-latency-playbackP bt">
<ctl name="BT_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hearing-aid">
</path>
<path name="raw-playbackP">
<ctl name="TDM_0_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hac-handset">
</path>
<path name="raw-playbackP usb-headphone">
<ctl name="USB_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP bt">
<ctl name="BT_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hearing-aid">
</path>
<path name="mmap-playbackP">
<ctl name="TDM_0_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hac-handset">
</path>
<path name="mmap-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP bt">
<ctl name="BT_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hearing-aid">
</path>
<path name="compress-offload-playback">
<ctl name="LVM Enable" value="1" />
</path>
<path name="compress-offload-playbackP">
<path name="compress-offload-playback" />
<ctl name="TDM_0_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hac-handset">
<path name="compress-offload-playback" />
</path>
<path name="compress-offload-playbackP bt">
<path name="compress-offload-playback" />
<ctl name="BT_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP usb-headphone">
<path name="compress-offload-playback" />
<ctl name="USB_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hearing-aid">
<path name="compress-offload-playback" />
</path>
<path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP hac-handset">
</path>
<path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP usb-headphone">
<ctl name="USB_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP hearing-aid">
</path>
<path name="haptic-audioP">
<ctl name="TDM_0_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP hac-handset">
</path>
<path name="haptic-audioP bt">
<ctl name="BT_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP usb-headphone">
<ctl name="USB_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="hifi-playbackP">
</path>
<path name="hifi-playbackP usb-headphone">
<ctl name="USB_RX Mixer HIFI" value="1"/>
</path>
<path name="hifi-recordC">
</path>
<path name="hifi-recordC usb-headset-mic">
</path>
<!-- audio capture dynamic route -->
<path name="audio-recordC">
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="audio-recordC usb-headset-mic">
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="audio-recordC bt-mic">
<ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path>
<path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path>
<path name="voip-recordC bt-mic">
<ctl name="VOIP TX Mixer BT_TX" value="1"/>
</path>
<!-- voice-call dynamic route -->
<path name="voice-callP">
<ctl name="TDM_0_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP bt">
<ctl name="BT_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP usb-headphone">
<ctl name="USB_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP call-screen">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callC">
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voice-callC usb-headset-mic">
<ctl name="AoC Modem Downlink ASRC Mode" value="ASP_OFF"/>
<ctl name="EP4 TX Mixer USB_TX" value="1"/>
</path>
<path name="voice-callC bt-mic">
<ctl name="EP4 TX Mixer BT_TX" value="1"/>
</path>
<path name="voice-callC hearing-aid">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="voice-callC call-screen">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="hostless-ulC spk-vi">
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1"/>
</path>
<path name="telephony-rx-captureC">
<ctl name="Incall Capture Stream0" value="DL"/>
</path>
<path name="incall-capture1C uplink">
<ctl name="Incall Capture Stream1" value="UL"/>
</path>
<path name="incall-capture1C downlink">
<ctl name="Incall Capture Stream1" value="DL"/>
</path>
<path name="incall-capture1C call">
<ctl name="Incall Capture Stream1" value="UL_DL"/>
</path>
<path name="incall-capture2C uplink">
<ctl name="Incall Capture Stream2" value="UL"/>
</path>
<path name="incall-capture2C downlink">
<ctl name="Incall Capture Stream2" value="DL"/>
</path>
<path name="incall-capture2C call">
<ctl name="Incall Capture Stream2" value="UL_DL"/>
</path>
<path name="low-latency-recordC">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="low-latency-recordC usb-headset-mic">
<ctl name="EP3 TX Mixer USB_TX" value="1"/>
</path>
<path name="low-latency-recordC bt-mic">
<ctl name="EP3 TX Mixer BT_TX" value="1"/>
</path>
<path name="mmap-recordC">
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="mmap-recordC usb-headset-mic">
<ctl name="EP2 TX Mixer USB_TX" value="1"/>
</path>
<path name="mmap-recordC bt-mic">
<ctl name="EP2 TX Mixer BT_TX" value="1"/>
</path>
<!-- codec setting -->>
<!-- Rx device -->
<path name="handset">
<ctl name="PCM Source" value="ASP"/>
<ctl name="AMP PCM Gain" value="6"/>
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-handset">
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="PCM Source" value="ASP"/>
<ctl name="AMP PCM Gain" value="7"/>
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-hac">
<path name="voice-handset"/>
</path>
<path name="voice-hac-handset">
</path>
<path name="speaker">
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<ctl name="Main AMP Enable Switch" value="1"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="speaker-post">
<!-- load Bypass FIR -->
<ctl name="Fast Use Case Delta File" value="fast_switch3.txt" />
<ctl name="Fast Use Case Switch Enable" value="1" />
<ctl name="R Fast Use Case Delta File" value="fast_switch4.txt" />
<ctl name="R Fast Use Case Switch Enable" value="1" />
</path>
<path name="voice-speaker">
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="ASPTX1 Slot Position" value="1"/>
<ctl name="R ASPTX1 Slot Position" value="0"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-speaker-post">
<!-- load Enable FIR -->
<ctl name="Fast Use Case Delta File" value="fast_switch1.txt" />
<ctl name="Fast Use Case Switch Enable" value="1" />
<ctl name="R Fast Use Case Delta File" value="fast_switch2.txt" />
<ctl name="R Fast Use Case Switch Enable" value="1" />
<ctl name="Digital PCM Volume" value="800"/>
</path>
<path name="voice-dual-speaker">
<!-- Speaker Separation -->
<path name="voice-speaker" />
<path name="voice-speaker-post" />
</path>
<path name="speaker-safe">
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="speaker-safe-post">
<!-- load Bypass FIR -->
<ctl name="R Fast Use Case Delta File" value="fast_switch4.txt" />
<ctl name="R Fast Use Case Switch Enable" value="1" />
</path>
<path name="speaker-amp1">
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="speaker-amp2">
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="usb-tty-full">
</path>
<path name="usb-tty-hco">
</path>
<path name="usb-tty-vco">
</path>
<!-- Tx device -->
<path name="handset-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-handset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="speaker-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-speaker-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="camcorder-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="camcorder-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="voice-recog-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="voice-recog-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-recog-aec-mic">
<ctl name="Audio Capture Eraser Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="Audio Capture Mic Source" value="ERASER"/>
</path>
<path name="voice-recog-aec-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="unprocessed-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-dual-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-dual-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-triple-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-triple-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="bt-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="BT_MIC"/>
<ctl name="Voice Call Mic Source" value="BT_MIC"/>
</path>
<path name="bt-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="usb-headset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="Voice Call Mic Source" value="USB_MIC"/>
</path>
<path name="usb-headset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c -->
<path name="cs35l41-load-protection-firmware-start">
<!-- Enable it after get the protection firmware -->
<ctl name="DSP Booted" value="0" />
<ctl name="R DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<path name="cs35l41-load-protection-firmware-end">
<!-- Enable it after get the protection firmware -->
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c end-->
</mixer>