Merge "audio: initialize aidl config" into udc-qpr-dev

This commit is contained in:
Treehugger Robot 2023-07-05 03:31:10 +00:00 committed by Android (Google) Code Review
commit f293d52798
4 changed files with 1320 additions and 0 deletions

View file

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2023, 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. -->
<audio_platform_configuration>
<product_lists>
<product name="Blackbird">
<id value="18d1:5033" />
</product>
<product name="Condor">
<id value="18d1:5034" />
</product>
<product name="Condor_Sprint">
<id value="18d1:5038" />
</product>
<product name="Condor_Sprint2">
<id value="18d1:5036" />
</product>
</product_lists>
<features>
<feature name="ThermalThrottle=Type:SKIN,Name:VIRTUAL-SKIN" />
<feature
name="BatteryThrottle=Type:BCL_VOLTAGE,Name:BCL_AUDIO_BAACL,Strategy:MediaSpeakerAndScreenOn" />
<feature
name="PlaybackThermalThrottle=PollWaitMs:20000,ThermistorName:VIRTUAL-SKIN,ThermistorType:SKIN,ThrottlingSeverity:LIGHT" />
</features>
<!-- The voip_db_mapping: format is "device="x" value="f1,f2..." -->
<!-- device should be "handset","speaker","usb","bt","bt_hearing_aid" or "digital_dock" -->
<voip_db_mapping>
<voip_path device="usb" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0" />
</voip_db_mapping>
<!-- The device_builder: format is "type="x" codec_name="y" argu="z". name and argu are optional. -->
<device_builder>
<device type="bt" />
<device type="usb" argu="MaxSamplingRate=96000,UnsupportedFormat=S24_LE" />
<device type="speaker" codec_name="cs35l41" argu="SpeakerNum=4,Rotation,AcousticShockProtection" />
</device_builder>
<!-- The spatial_capture_conditions: format is "use_case="x" audio_source="y" -->
<!-- use_case defines in aidl/audio/usecase/use_case.h, audio_source is definied in aidl interfaces. -->
<spatial_capture_conditions>
<conditions use_case="primary-capture" audio_source="MIC,CAMCORDER,VOICE_RECOGNITION" />
</spatial_capture_conditions>
<!-- The tuner_builder: format is "type="x" codec_name="y" argu="z". argu is optional. -->
<tuner_builder>
<tuner type="playback" name="waves" argu="Sink=SPK ThermistorsName=VIRTUAL-SKIN Extensions=StereoSpatializer" />
<tuner type="telephony" name="fortemedia" argu="VoIP_DLCHs=SPK:2,USB:2 VoIP_Rate=32000 BOOST_USB_SWB_CLK=y CCA=y" />
<tuner type="capture" name="gs_capture" />
</tuner_builder>
</audio_platform_configuration>

View file

@ -0,0 +1,243 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 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.
-->
<!-- Volume section defines a volume curve for a given use case and device category.
It contains a list of points of this curve expressing the attenuation in Millibels for a given
volume index from 0 to 100.
<volume stream=”AUDIO_STREAM_MUSIC” deviceCategory=””>
<point>0,-9600</point>
<point>100,0</point>
</volume>
-->
<volumes>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4960</point>
<point>33,-3650</point>
<point>66,-2650</point>
<point>100,-1250</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4735</point>
<point>14,-4170</point>
<point>28,-3600</point>
<point>71,-2030</point>
<point>100,-200</point>
</volume>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-6400</point>
<point>12,-5360</point>
<point>20,-4700</point>
<point>28,-4020</point>
<point>36,-3570</point>
<point>52,-2765</point>
<point>60,-2300</point>
<point>68,-1950</point>
<point>80,-1170</point>
<point>88,-750</point>
<point>92,-490</point>
<point>96,-210</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_NON_MUTABLE_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-5900</point>
<point>17,-4650</point>
<point>34,-3210</point>
<point>83,-1430</point>
<point>100,-400</point>
</volume>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_NON_MUTABLE_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_NON_MUTABLE_EXT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4920</point>
<point>14,-4390</point>
<point>57,-2740</point>
<point>85,-1570</point>
<point>100,-300</point>
</volume>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4960</point>
<point>33,-3920</point>
<point>66,-2850</point>
<point>100,-1750</point>
</volume>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-6460</point>
<point>33,-4490</point>
<point>66,-2460</point>
<point>100,-1280</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_NON_MUTABLE_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="FULL_SCALE_VOLUME_CURVE"/>
</volumes>

View file

@ -0,0 +1,989 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2022, 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_TX Chan" value="Four"/>
<ctl name="TDM_0_TX Format" value="S32_LE"/>
<!-- Haptic setting -->
<ctl name="Haptics Streaming Source" value="ASP Rx"/>
<ctl name="HR Haptics Streaming Source" value="ASP Rx"/>
<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="0"/>
<ctl name="HR RX Slots" id="0" value="3"/>
<ctl name="HR RX Slots" id="1" 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"/>
<ctl name="E ASPRX1 Slot Position" value="0"/>
<ctl name="E ASPRX2 Slot Position" value="1"/>
<!-- TX slot -->
<ctl name="ASPTX1 Slot Position" value="0"/>
<ctl name="R ASPTX1 Slot Position" value="1"/>
<ctl name="E ASPTX1 Slot Position" value="4"/>
<ctl name="ASPTX2 Slot Position" value="2"/>
<ctl name="R ASPTX2 Slot Position" value="3"/>
<ctl name="E ASPTX2 Slot Position" value="5"/>
<ctl name="ASPTX3 Slot Position" value="6"/>
<ctl name="R ASPTX3 Slot Position" value="6"/>
<ctl name="E ASPTX3 Slot Position" value="6"/>
<ctl name="ASPTX4 Slot Position" value="7"/>
<ctl name="R ASPTX4 Slot Position" value="7"/>
<ctl name="E 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="E VBSTMON Output Switch" value="1"/>
<ctl name="DRE DRE Switch" value="1"/>
<ctl name="R DRE DRE Switch" value="1"/>
<ctl name="E 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="E AMP PCM Gain" value="0"/>
<ctl name="Digital PCM Volume" value="0"/>
<ctl name="R Digital PCM Volume" value="0"/>
<ctl name="E 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" />
<ctl name="E Main AMP Enable Switch" value="0"/>
<!-- Cirrus Booster mode -->
<ctl name="PCM Source" value="DSP"/>
<ctl name="R PCM Source" value="DSP"/>
<ctl name="E PCM Source" value="ASP"/>
<ctl name="DSP1 Firmware" value="Protection"/>
<ctl name="R DSP1 Firmware" value="Protection"/>
<ctl name="E 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" />
<ctl name="E Boost Peak Current Limit" value="3.50A" />
<ctl name="PCM Soft Ramp" value=".5ms" />
<ctl name="R PCM Soft Ramp" value=".5ms" />
<ctl name="E PCM Soft Ramp" value=".5ms" />
<!-- Cirrus ASP TX source -->
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="E ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="E ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="E ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="E 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_switch9.txt" />
<ctl name="R Fast Use Case Switch Enable" value="0" />
<ctl name="R Fast Use Case Delta File" value="fast_switch9.txt" />
<!-- 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_0_RX Mixer IMSV" 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="USB_RX Mixer IMSV" 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 IMSV" 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" />
<ctl name="Hotword Tap 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" />
<ctl name="Compress Offload Volume" value="1000" />
<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="primary-playback -> speaker">
<ctl name="TDM_0_RX Mixer EP2" value="1" />
</path>
<path name="primary-playback-0 -> speaker">
<path name="primary-playback -> speaker" />
</path>
<path name="primary-playback-0 -> speaker-earpiece">
<path name="primary-playback -> speaker" />
</path>
<path name="primary-playback-0 -> speaker-safe">
<path name="primary-playback -> speaker" />
</path>
<path name="primary-playback -> bt">
<ctl name="BT_RX Mixer EP2" value="1" />
</path>
<path name="primary-playback -> usb-headset">
<ctl name="USB_RX Mixer EP2" value="1" />
</path>
<path name="raw-playback -> speaker">
<ctl name="TDM_0_RX Mixer RAW" value="1" />
</path>
<path name="raw-playback-0 -> speaker">
<path name="raw-playback -> speaker" />
</path>
<path name="raw-playback-0 -> speaker-earpiece">
<path name="raw-playback -> speaker" />
</path>
<path name="raw-playback-0 -> speaker-safe">
<path name="raw-playback -> speaker" />
</path>
<path name="raw-playback -> bt">
<ctl name="BT_RX Mixer RAW" value="1" />
</path>
<path name="raw-playback -> usb-headset">
<ctl name="USB_RX Mixer RAW" value="1" />
</path>
<path name="deep-buffer-playback -> speaker">
<ctl name="TDM_0_RX Mixer EP6" value="1" />
</path>
<path name="deep-buffer-playback-0 -> speaker">
<path name="deep-buffer-playback -> speaker" />
</path>
<path name="deep-buffer-playback-0 -> speaker-earpiece">
<path name="deep-buffer-playback -> speaker" />
</path>
<path name="deep-buffer-playback-0 -> speaker-safe">
<path name="deep-buffer-playback -> speaker" />
</path>
<path name="deep-buffer-playback -> bt">
<ctl name="BT_RX Mixer EP6" value="1" />
</path>
<path name="deep-buffer-playback -> usb-headset">
<ctl name="USB_RX Mixer EP6" value="1" />
</path>
<path name="compress-offload-playback">
<ctl name="LVM Enable" value="1" />
</path>
<path name="compress-offload-playback -> speaker">
<path name="compress-offload-playback" />
<ctl name="TDM_0_RX Mixer EP7" value="1" />
</path>
<path name="compress-offload-playback-0 -> speaker">
<path name="compress-offload-playback -> speaker" />
</path>
<path name="compress-offload-playback-0 -> speaker-earpiece">
<path name="compress-offload-playback -> speaker" />
</path>
<path name="compress-offload-playback-0 -> speaker-safe">
<path name="compress-offload-playback -> speaker" />
</path>
<path name="compress-offload-playback -> bt">
<ctl name="BT_RX Mixer EP7" value="1" />
</path>
<path name="compress-offload-playback -> usb-headset">
<ctl name="USB_RX Mixer EP7" value="1" />
</path>
<path name="mmap-playback -> speaker">
<ctl name="TDM_0_RX Mixer EP1" value="1" />
</path>
<path name="mmap-playback-0 -> speaker">
<path name="mmap-playback -> speaker" />
</path>
<path name="mmap-playback-0 -> speaker-earpiece">
<path name="mmap-playback -> speaker" />
</path>
<path name="mmap-playback-0 -> speaker-safe">
<path name="mmap-playback -> speaker" />
</path>
<path name="mmap-playback -> bt">
<ctl name="BT_RX Mixer EP1" value="1" />
</path>
<path name="mmap-playback -> usb-headset">
<ctl name="USB_RX Mixer EP1" value="1" />
</path>
<path name="hifi-playback -> usb-headset">
<ctl name="USB_RX Mixer HIFI" value="1" />
</path>
<path name="voip-playback -> speaker">
<ctl name="TDM_0_RX Mixer VOIP" value="1" />
</path>
<path name="voip-playback-0 -> speaker">
<path name="voip-playback -> speaker" />
</path>
<path name="voip-playback-0 -> speaker-earpiece">
<path name="voip-playback -> speaker" />
</path>
<path name="voip-playback-0 -> speaker-safe">
<path name="voip-playback -> speaker" />
</path>
<path name="voip-playback -> bt">
<ctl name="BT_RX Mixer VOIP" value="1" />
</path>
<path name="voip-playback -> usb-headset">
<ctl name="USB_RX Mixer VOIP" value="1" />
</path>
<path name="immersive-playback -> speaker">
<ctl name="TDM_0_RX Mixer IMSV" value="1" />
</path>
<path name="immersive-playback-0 -> speaker">
<path name="immersive-playback -> speaker" />
</path>
<path name="immersive-playback-0 -> speaker-earpiece">
<path name="immersive-playback -> speaker" />
</path>
<path name="immersive-playback-0 -> speaker-safe">
<path name="immersive-playback -> speaker" />
</path>
<path name="immersive-playback -> bt">
<ctl name="BT_RX Mixer IMSV" value="1" />
</path>
<path name="immersive-playback -> usb-headset">
<ctl name="USB_RX Mixer IMSV" value="1" />
</path>
<path name="haptic-playback -> speaker">
<ctl name="TDM_0_RX Mixer EP3" value="1" />
<ctl name="TDM_0_RX Mixer EP8" value="1" />
</path>
<path name="haptic-playback-0 -> speaker">
<path name="haptic-playback -> speaker" />
</path>
<path name="haptic-playback-0 -> speaker-earpiece">
<path name="haptic-playback -> speaker" />
</path>
<path name="haptic-playback-0 -> speaker-safe">
<path name="haptic-playback -> speaker" />
</path>
<path name="haptic-playback -> bt">
<ctl name="BT_RX Mixer EP3" value="1" />
<ctl name="TDM_0_RX Mixer EP8" value="1" />
</path>
<path name="haptic-playback -> usb-headset">
<ctl name="USB_RX Mixer EP3" value="1" />
<ctl name="TDM_0_RX Mixer EP8" value="1" />
</path>
<!-- audio capture dynamic route -->
<path name="microphones -> primary-capture-0">
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="back-microphones -> primary-capture-0">
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="usb-headset-mic -> primary-capture-0">
<ctl name="EP1 TX Mixer USB_TX" value="1" />
</path>
<path name="microphones -> voip-capture-0">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="back-microphones -> voip-capture-0">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="usb-headset-mic -> voip-capture-0">
<ctl name="VOIP TX Mixer USB_TX" value="1" />
</path>
<path name="bt-mic -> voip-capture-0">
<ctl name="VOIP TX Mixer BT_TX" value="1" />
</path>
<path name="microphones -> fast-capture-0">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="back-microphones -> fast-capture-0">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="usb-headset-mic -> fast-capture-0">
<ctl name="EP3 TX Mixer USB_TX" value="1" />
</path>
<path name="bt-mic -> fast-capture-0">
<ctl name="EP3 TX Mixer BT_TX" value="1" />
</path>
<path name="microphones -> sound-trigger-capture-0">
</path>
<path name="microphones -> sound-trigger-tap-capture-0">
</path>
<path name="microphones -> hotword-lookback-capture-0">
</path>
<!-- voice-call dynamic route -->
<path name="voice-call-downlink-0 -> speaker">
<ctl name="TDM_0_RX Mixer EP5" value="1" />
</path>
<path name="voice-call-downlink-0 -> speaker-earpiece">
<ctl name="TDM_0_RX Mixer EP5" value="1" />
</path>
<path name="voice-call-downlink-0 -> bt">
<ctl name="BT_RX Mixer EP5" value="1" />
</path>
<path name="voice-call-downlink-0 -> usb-headphone">
<ctl name="USB_RX Mixer EP5" value="1" />
</path>
<path name="voice-call-downlink-0 -> null-sink">
<ctl name="INCALL_RX Mixer EP5" value="1" />
</path>
<path name="microphones -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="back-microphones -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="usb-headset-mic -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer USB_TX" value="1" />
</path>
<path name="bt-mic -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer BT_TX" value="1" />
</path>
<path name="null-source -> voice-call-uplink-0">
<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 (VOICE_DOWNLINK) -> in-call-capture-0">
<ctl name="Incall Capture Stream0" value="DL" />
</path>
<path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-0">
<ctl name="Incall Capture Stream0" value="UL" />
</path>
<path name="telephony-rx (VOICE_CALL) -> in-call-capture-0">
<ctl name="Incall Capture Stream0" value="UL_DL" />
</path>
<path name="telephony-rx (VOICE_DOWNLINK) -> in-call-capture-1">
<ctl name="Incall Capture Stream1" value="DL" />
</path>
<path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-1">
<ctl name="Incall Capture Stream1" value="UL" />
</path>
<path name="telephony-rx (VOICE_CALL) -> in-call-capture-1">
<ctl name="Incall Capture Stream1" value="UL_DL" />
</path>
<path name="telephony-rx (VOICE_DOWNLINK) -> in-call-capture-2">
<ctl name="Incall Capture Stream2" value="DL" />
</path>
<path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-2">
<ctl name="Incall Capture Stream2" value="UL" />
</path>
<path name="telephony-rx (VOICE_CALL) -> in-call-capture-2">
<ctl name="Incall Capture Stream2" value="UL_DL" />
</path>
<path name="microphones -> mmap-capture-0">
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1" />
</path>
<path name="usb-headset-mic -> mmap-capture-0">
<ctl name="EP2 TX Mixer USB_TX" value="1" />
</path>
<path name="bt-mic -> mmap-capture-0">
<ctl name="EP2 TX Mixer BT_TX" value="1" />
</path>
<!-- codec setting -->
<!-- Rx device -->
<path name="speaker-earpiece">
<ctl name="E PCM Source" value="ASP"/>
<ctl name="E AMP PCM Gain" value="9"/>
<ctl name="ASPTX1 Slot Position" value="4"/>
<ctl name="E ASPTX1 Slot Position" value="0"/>
<ctl name="ASPTX2 Slot Position" value="5"/>
<ctl name="E ASPTX2 Slot Position" value="2"/>
<ctl name="E Main AMP Enable Switch" value="1"/>
</path>
<path name="speaker-earpiece (VOICE)">
<ctl name="E PCM Source" value="ASP"/>
<ctl name="E AMP PCM Gain" value="9"/>
<ctl name="ASPTX1 Slot Position" value="4"/>
<ctl name="E ASPTX1 Slot Position" value="0"/>
<ctl name="ASPTX2 Slot Position" value="5"/>
<ctl name="E ASPTX2 Slot Position" value="2"/>
<ctl name="E Main AMP Enable Switch" value="1"/>
</path>
<path name="speaker">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R Main AMP Enable Switch" value="1" />
<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="speaker (VOICE)">
<ctl name="ASPTX1 Slot Position" value="1"/>
<ctl name="R ASPTX1 Slot Position" value="0"/>
<ctl name="Digital PCM Volume" value="825"/>
<ctl name="R Digital PCM Volume" value="825"/>
<ctl name="Main AMP Enable Switch" value="1"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
<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" />
</path>
<path name="speaker-safe">
<ctl name="R Main AMP Enable Switch" value="1" />
<!-- 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>
<!-- Tx device -->
<path name="microphones">
<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 Record Soft Gain (dB)" value="22" />
</path>
<path name="microphones (VOICE)">
<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" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="microphones (VOICE_RECOGNITION)">
<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 Record Soft Gain (dB)" value="22" />
</path>
<path name="microphones (VOICE_RECOGNITION,SOUND_TRIGGER_TAP)">
<ctl name="Audio Capture Eraser Enable" value="1" />
<ctl name="Hotword Tap Enable" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="back-microphones">
<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="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 Record Soft Gain (dB)" value="22" />
</path>
<path name="back-microphones (VOICE)">
<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" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="microphones (CAMCORDER)">
<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 Record Soft Gain (dB)" value="0" />
</path>
<path name="back-microphones (CAMCORDER)">
<path name="microphones (CAMCORDER)" />
</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="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 Record Soft Gain (dB)" value="0" />
</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="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="Audio Capture Mic Source" value="ERASER" />
<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="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 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="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 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="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 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="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="Audio Capture Mic Source" value="BT_MIC" />
<ctl name="Voice Call Mic Source" value="BT_MIC" />
<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="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="Audio Capture Mic Source" value="USB_MIC" />
<ctl name="Voice Call Mic Source" value="USB_MIC" />
<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-->
<!-- cs35l41 specific path for adated feature in cs35l41_route_control.cc -->
<!-- Which is controlled by speaker module and path name format is fixed. -->
<!-- Path name format: adapted-{type}{-battery-throttled}{-acoustic-shock} -->
<!-- Battery throttle and acoustic shock are disabled: "adapted-speaker" -->
<!-- Battery throttle enabled: "adapted-speaker-battery-throttled" -->
<!-- Acoustic shock enabled: "adapted-speaker-acoustic-shock" -->
<!-- Both are enabled: "adapted-speaker-battery-throttled-acoustic-shock" -->
<path name="adapted-speaker">
<ctl name="Boost Peak Current Limit" value="3.50A" />
<ctl name="R Boost Peak Current Limit" value="3.50A" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="R Digital PCM Volume" value="817" />
</path>
<path name="adapted-speaker-battery-throttled">
<ctl name="Boost Peak Current Limit" value="1.80A" />
<ctl name="R Boost Peak Current Limit" value="1.80A" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="R Digital PCM Volume" value="817" />
</path>
<path name="adapted-speaker-safe">
<ctl name="R Boost Peak Current Limit" value="3.50A" />
<ctl name="R Digital PCM Volume" value="817" />
</path>
<path name="adapted-speaker-safe-battery-throttled">
<path name="adapted-speaker-safe" />
</path>
<path name="adapted-earpiece">
<ctl name="Digital PCM Volume" value="817" />
</path>
<path name="adapted-earpiece-battery-throttled">
<path name="adapted-earpiece" />
</path>
<path name="adapted-voice-speaker">
<ctl name="R Boost Peak Current Limit" value="3.50A" />
<ctl name="Boost Peak Current Limit" value="3.50A" />
<ctl name="Digital PCM Volume" value="825" />
<ctl name="R Digital PCM Volume" value="825" />
</path>
<path name="adapted-voice-speaker-battery-throttled">
<path name="adapted-voice-speaker" />
</path>
<path name="adapted-voice-speaker-acoustic-shock">
<ctl name="R Boost Peak Current Limit" value="3.50A" />
<ctl name="Boost Peak Current Limit" value="3.50A" />
<ctl name="PCM Soft Ramp" value="2ms" />
<ctl name="Digital PCM Volume" value="0" />
<ctl name="R Digital PCM Volume" value="825" />
</path>
<path name="adapted-voice-speaker-battery-throttled-acoustic-shock">
<path name="adapted-voice-speaker-acoustic-shock" />
</path>
<path name="adapted-voice-earpiece">
<ctl name="Boost Peak Current Limit" value="3.50A" />
<ctl name="Digital PCM Volume" value="817" />
</path>
<path name="adapted-voice-earpiece-battery-throttled">
<path name="adapted-voice-earpiece" />
</path>
<!-- cs35l41 specific path for adated feature in cs35l41_route_control.cc end -->
</mixer>

View file

@ -16,6 +16,17 @@
AUDIO_TABLE_FOLDER := felix
# Enable this to build AIDL
# BUILD_AUDIO_AIDL_VERSION := true
ifeq ($(BUILD_AUDIO_AIDL_VERSION),true)
# AIDL HAL configs are in the *config_aidl* folder
PRODUCT_COPY_FILES += \
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/audio_platform_configuration_aidl.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration_aidl.xml \
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/mixer_paths_aidl.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_aidl.xml
else
# HIDL HAL configs are in the *config* folder
# Platform Configuration for AudioHAL / SoundTriggerHAL
PRODUCT_COPY_FILES += \
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
@ -34,6 +45,7 @@ PRODUCT_COPY_FILES += \
# Mixer Path Configuration for AudioHAL
PRODUCT_COPY_FILES += \
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
endif
# Speaker firmware files
SPK_FIRMWARE_PATH := $(AUDIO_TABLE_FOLDER)/cs35l41/fw