topaz: Move some audio configs to device tree

Change-Id: Ib6a7eb4940325a0b4962529b71c19efa4bece3bd
This commit is contained in:
boedhack99
2024-02-06 19:20:56 +07:00
parent f21d8ed312
commit 102df3f2d8
8 changed files with 10343 additions and 8 deletions

View File

@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2020-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. -->
<config>
<group_device name="TDM-LPAIF-RX-TERTIARY" rate="96000" ch="3" bits="16" slot_mask="7"/>
<device name="TDM-LPAIF-RX-TERTIARY-VIRT-0" rate="96000" ch="2" bits="16" />
<device name="CODEC_DMA-LPAIF_WSA-RX-0" rate="48000" ch="2" bits="16" />
<device name="CODEC_DMA-LPAIF_WSA-RX-1" rate="48000" ch="2" bits="16" />
<device name="CODEC_DMA-LPAIF_RXTX-RX-0" rate="48000" ch="1" bits="16" />
<device name="CODEC_DMA-LPAIF_RXTX-RX-1" rate="48000" ch="2" bits="16" />
<device name="TDM-LPAIF_AXI-RX-PRIMARY" rate="48000" ch="2" bits="16" />
<device name="SLIM-DEV1-RX-0" rate="48000" ch="2" bits="16" />
<device name="DISPLAY_PORT-RX" rate="48000" ch="2" bits="16" />
<device name="USB_AUDIO-RX" rate="48000" ch="2" bits="16" />
<device name="CODEC_DMA-LPAIF_RXTX-TX-3" rate="48000" ch="1" bits="16" />
<device name="CODEC_DMA-LPAIF_RXTX-TX-4" rate="48000" ch="2" bits="16" />
<device name="CODEC_DMA-LPAIF_VA-TX-0" rate="48000" ch="1" bits="16" />
<device name="CODEC_DMA-LPAIF_VA-TX-1" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_AXI-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="SLIM-DEV1-TX-0" rate="48000" ch="1" bits="16" />
<device name="USB_AUDIO-TX" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_AUD-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_AUD-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF-RX-TERTIARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF-TX-TERTIARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_RXTX-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_RXTX-RX-0" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_RXTX-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_VA-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_VA-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_WSA-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="MI2S-LPAIF_WSA-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_AUD-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_AUD-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF-RX-TERTIARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF-TX-TERTIARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_RXTX-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_RXTX-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_VA-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_VA-TX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_WSA-RX-PRIMARY" rate="48000" ch="1" bits="16" />
<device name="TDM-LPAIF_WSA-TX-PRIMARY" rate="48000" ch="1" bits="16" />
</config>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,989 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2020, 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. -->
<!-- SPDX-License-Identifier: BSD-3-Clause-Clear -->
<resource_manager_info>
<config_params>
<param key="native_audio_mode" value="false"/>
<param key="max_sessions" value="128"/>
<param key="logging_level" value ="3" />
</config_params>
<config_gapless key="gapless_supported" value="1"/>
<bt_codecs>
<codec codec_format="CODEC_TYPE_AAC" codec_type="enc|dec"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_SBC" codec_type="enc|dec"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_LDAC" codec_type="enc"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_APTX" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_HD" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_AD" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_DUAL_MONO" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_AD_SPEECH" codec_type="enc|dec"
codec_library="lib_bt_aptx.so" />
</bt_codecs>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<config_voice>
<vsid>0xB3000000</vsid>
<mode_map>
<modepair key="0x11C05000" value="0xB3000001"/>
<modepair key="0x11DC5000" value="0xB3000001"/>
<modepair key="0x12006000" value="0xB3000001"/>
<modepair key="0x121C6000" value="0xB3000001"/>
</mode_map>
</config_voice>
<device_profile>
<in-device>
<id>PAL_DEVICE_IN_HANDSET_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>2</max_channels>
<!-- lct modify -->
<channels>2</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>handset-mic</snd_device_name>
<!-- Comment the channels and backend lines and uncomment this when handset-dmic-endfire is needed
<channels>2</channels>
<snd_device_name>handset-dmic-endfire</snd_device_name>
-->
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<!-- lct audio add for cit begin -->
<custom-config key="main-mic">
<channels>1</channels>
<snd_device_name>main-mic</snd_device_name>
</custom-config>
<custom-config key="top-mic">
<channels>1</channels>
<snd_device_name>top-mic</snd_device_name>
</custom-config>
<custom-config key="back-mic">
<channels>1</channels>
<snd_device_name>back-mic</snd_device_name>
</custom-config>
<custom-config key="default-mic">
<channels>2</channels>
<snd_device_name>handset-mic</snd_device_name>
</custom-config>
<!-- lct audio add for cit end -->
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>HW</sidetone_mode>
<bit_width>16</bit_width>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
<custom-config key="unprocessed-hdr-mic-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-portrait</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-portrait</snd_device_name>
</custom-config>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_HANDSET</id>
<id>PAL_DEVICE_OUT_SPEAKER</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_SPEAKER_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>4</max_channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<!-- lct modify -->
<channels>2</channels>
<snd_device_name>speaker-mic</snd_device_name>
<!-- Comment the channels and backend lines and uncomment this when speaker-dmic-endfire is needed
<channels>2</channels>
<snd_device_name>speaker-dmic-endfire</snd_device_name>
-->
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>OFF</sidetone_mode>
<bit_width>16</bit_width>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
<custom-config key="unprocessed-hdr-mic-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-portrait</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-portrait</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_LOOPBACK</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_WIRED_HEADSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>headset-mic</snd_device_name>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>HW</sidetone_mode>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<priority>1</priority>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_USB_HEADSET</id>
<back_end_name>USB_AUDIO-TX</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<ec_rx_device>
<id>PAL_DEVICE_OUT_USB_HEADSET</id>
</ec_rx_device>
<snd_device_name>usb-headset-mic</snd_device_name>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
</usecase>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<sidetone_mode>HW</sidetone_mode>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_FM_TUNER</id>
<back_end_name>SLIM-DEV1-TX-8</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>play-fm</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<usecase>
<name>PAL_STREAM_LOOPBACK</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_PROXY</id>
<back_end_name>PCM_RT_PROXY-TX-1</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<usecase>
<name>PAL_STREAM_PROXY</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_BLUETOOTH_SCO_HEADSET</id>
<back_end_name>SLIM-DEV1-TX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<samplerate>8000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>bt-a2dp</snd_device_name>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_HANDSET_VA_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_VA-TX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>va-mic</snd_device_name>
<ec_rx_device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
<id>PAL_DEVICE_OUT_HANDSET</id>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_HEADSET_VA_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_VA-TX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>headset-va-mic</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<ec_rx_device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_BLUETOOTH_A2DP</id>
<back_end_name>SLIM-DEV1-TX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-a2dp</snd_device_name>
<samplerate>44100</samplerate>
<bit_width>16</bit_width>
</in-device>
<in-device> <!-- Call record -->
<id>PAL_DEVICE_IN_TELEPHONY_RX</id>
<back_end_name>PCM_RT_PROXY-TX-1</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<usecase>
<name>PAL_STREAM_PROXY</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_ECHO_REF</id>
<back_end_name>PCM_DUMMY-TX-0</back_end_name>
<snd_device_name>echo-ref-record</snd_device_name>
<max_channels>1</max_channels>
<channels>1</channels>
<bit_width>16</bit_width>
<samplerate>48000</samplerate>
<usecase>
<name>PAL_STREAM_RAW</name>
</usecase>
</in-device>
<out-device>
<id>PAL_DEVICE_NONE</id>
<back_end_name>CODEC_DMA-LPAIF_WSA-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>none</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-1</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>speaker</snd_device_name>
<!-- lct audio add for cit begin -->
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<sidetone_mode>HW</sidetone_mode>
<custom-config key="speaker-top">
<channels>1</channels>
<snd_device_name>speaker-top</snd_device_name>
</custom-config>
<custom-config key="speaker-bot">
<channels>1</channels>
<snd_device_name>speaker-bot</snd_device_name>
</custom-config>
<custom-config key="speaker-tl">
<channels>2</channels>
<snd_device_name>speaker-tl</snd_device_name>
</custom-config>
<custom-config key="speaker-th">
<channels>2</channels>
<snd_device_name>speaker-th</snd_device_name>
</custom-config>
<custom-config key="speaker-bl">
<channels>2</channels>
<snd_device_name>speaker-bl</snd_device_name>
</custom-config>
<custom-config key="speaker-bh">
<channels>2</channels>
<snd_device_name>speaker-bh</snd_device_name>
</custom-config>
<custom-config key="speaker-default">
<channels>1</channels>
<snd_device_name>speaker</snd_device_name>
</custom-config>
</usecase>
<!-- lct audio add for cit end -->
<speaker_protection_enabled>0</speaker_protection_enabled>
<cps_enabled>0</cps_enabled>
<is_24_bit_supported>0</is_24_bit_supported>
<Charge_concurrency_enabled>0</Charge_concurrency_enabled>
<!--specify the supported bit format on speaker end point -->
<!--this should be in the form of pal_audio_fmt_id-->
<!--e.g <supported_bit_format >PAL_AUDIO_FMT_PCM_S24_LE</supported_bit_format>-->
<supported_bit_format>PAL_AUDIO_FMT_PCM_S16_LE</supported_bit_format>
<!-- RAS should be enabled with speaker protection always -->
<ras_enabled>0</ras_enabled>
<!-- Flag to specify speaker in case Voice call is switched from
handset to speaker with only 1 speaker.
Values: Both speaker : 0
Right speaker: 1
Left speaker : 2
-->
<speaker_mono_right>0</speaker_mono_right>
<!-- Time in seconds for Quick cal. Set 0 to disable -->
<quick_cal_time>0</quick_cal_time>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>2</priority>
<channels>1</channels>
<snd_device_name>speaker-mono-2</snd_device_name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<!-- lct delete 16k -->
<priority>3</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_HANDSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>handset</snd_device_name>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>2</priority>
<snd_device_name>voice-handset</snd_device_name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>3</priority>
<snd_device_name>voice-handset</snd_device_name>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<fractional_sr>1</fractional_sr>
<snd_device_name>headphones</snd_device_name>
<!--HIFI Filter Headphones-Uncomment this when param key hifi_filter is true
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_PCM_OFFLOAD</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
-->
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>2</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<fractional_sr>1</fractional_sr>
<snd_device_name>headphones</snd_device_name>
<!--HIFI Filter Headphones-Uncomment this when param key hifi_filter is true
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_PCM_OFFLOAD</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
-->
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<custom-config key="cs-mode">
<snd_device_name>headphones-cs</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>2</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_USB_DEVICE</id>
<back_end_name>USB_AUDIO-RX</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>usb-headphones</snd_device_name>
<fractional_sr>1</fractional_sr>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_USB_HEADSET</id>
<back_end_name>USB_AUDIO-RX</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>usb-headphones</snd_device_name>
<fractional_sr>1</fractional_sr>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_PROXY</id>
<back_end_name>PCM_RT_PROXY-RX-1</back_end_name>
<max_channels>8</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<fractional_sr>0</fractional_sr>
<samplerate>48000</samplerate>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
<back_end_name>SLIM-DEV1-RX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-a2dp</snd_device_name>
<samplerate>44100</samplerate>
<bit_width>16</bit_width>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_BLUETOOTH_SCO</id>
<back_end_name>SLIM-DEV1-RX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-sco</snd_device_name>
<samplerate>8000</samplerate>
<bit_width>16</bit_width>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
</device_profile>
<in_streams>
<in_stream>
<name>PAL_STREAM_VOIP_TX</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_DEEP_BUFFER</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_VOICE_UI</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_PROXY</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_COMPRESSED</disabled_stream>
<disabled_stream>PAL_STREAM_ULTRA_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_COMPRESSED</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
</in_streams>
<sound_trigger_platform_info>
<param version="0x0100" /> <!-- this must be the first param -->
<common_config>
<param enable_failure_detection="false" />
<param support_device_switch="false" />
<param support_nlpi_switch="true" />
<param transit_to_non_lpi_on_charging="false" />
<!-- Param used to indicate if SVA has dedicated back end path and
ports not conflicting with other audio paths -->
<param dedicated_sva_path="false" />
<param dedicated_headset_path="false" />
<param lpi_enable="true" />
<param enable_debug_dumps="false" />
<param concurrent_capture="false" />
<param concurrent_voice_call="false" />
<param concurrent_voip_call="false" />
<param low_latency_bargein_enable="true" />
<param mmap_enable="true" />
<param mmap_buffer_duration="5000" />
<param mmap_frame_length="5" /> <!-- 5ms duration of data -->
</common_config>
<capture_profile_list>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="headset-va-mic" />
<param ec_ref="true" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_LPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="headset-va-mic-lpi" />
<param ec_ref="false" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_NLPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="headset-va-mic" />
<param ec_ref="false" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_RAW_LPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_RAW_NLPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_RAW_LPI">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_RAW_NLPI">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_FFNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000B"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_FFNS">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000B"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_FFECNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_FFECNS">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
</capture_profile_list>
<!-- Multiple sound_model_config tags can be listed, each with unique
-->
<!-- vendor_uuid. The below tag represents QTI SVA sound model -->
<!-- configuration. ISV must use their own unique vendor_uuid.
-->
<!-- QTI SVA -->
<sound_model_config>
<param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b"/>
<!-- durations in us -->
<param kw_start_tolerance="300000" />
<param kw_end_tolerance="240000" />
<param data_before_kw_start="360000" />
<param data_after_kw_end="200000" />
<param merge_first_stage_sound_models="false"/>
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param capture_keyword="1000" /> <!-- Default history buffer length -->
<param client_capture_read_delay="2000" /> <!-- reserved buffer duration for rt data -->
<param pre_roll_duration="500" /> <!-- Default preroll duration -->
<operating_modes>
<low_power capture_profile_handset="SINGLE_MIC_16KHZ_16BIT_RAW_LPI" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_LPI"/>
<high_performance capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS"/>
<high_performance_and_charging capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS"/>
</operating_modes>
<arm_ss_usecase>
<!-- Options are "KEYWORD_DETECTION", "USER_VERIFICATION",
"CUSTOM_DETECTION" -->
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x2" />
<param module_lib="libcapiv2svacnnvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "USER_VERIFICATION" />
<param sm_id="0x4" />
<param module_lib="libcapiv2uvvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x8" />
<param module_lib="libcapiv2svarnnvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<module_params>
<param module_type="GMM" />
<param load_sound_model_ids="0xC0000008, 0x0800104C" />
<param wakeup_config_ids="0xC0000008, 0x08001049" />
<param buffering_config_ids="0xC0000008, 0x08001044" />
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000001"/>
</streamConfig-metadata>
</module_params>
<module_params>
<param module_type="PDK" />
<param load_sound_model_ids="0xC0000008, 0x0800124E"/>
<param unload_sound_model_ids="0xC0000008, 0x08001250"/>
<param wakeup_config_ids="0xC0000008, 0x08001049" />
<param buffering_config_ids="0xC0000008, 0x0800124F"/>
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000006"/>
</streamConfig-metadata>
</module_params>
</sound_model_config>
<!-- Hotword -->
<sound_model_config>
<param vendor_uuid="7038ddc8-30f2-11e6-b0ac-40a8f03d3f15"/>
<param get_module_version="true" />
<param kw_start_tolerance="100" />
<param kw_end_tolerance="100" />
<param merge_first_stage_sound_models="false"/>
<param capture_keyword="2000" />
<param client_capture_read_delay="2000" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param capture_keyword="2000" />
<param client_capture_read_delay="2000" />
<operating_modes>
<low_power capture_profile_handset="SINGLE_MIC_16KHZ_16BIT_RAW_LPI" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_LPI"/>
<high_performance capture_profile_handset="SINGLE_MIC_16KHZ_16BIT_RAW_NLPI" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_NLPI"/>
<high_performance_and_charging capture_profile_handset="SINGLE_MIC_16KHZ_16BIT_RAW_NLPI" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_NLPI"/>
</operating_modes>
<module_params>
<param module_type="HOTWORD" />
<param load_sound_model_ids="0xC0000008, 0x0800104C" />
<param unload_sound_model_ids="0xC0000008, 0x00012C15" />
<param buffering_config_ids="0xC0000008, 0x08001044" />
<param version_ids="0xC0000008, 0x18000101" />
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000002"/>
</streamConfig-metadata>
</module_params>
</sound_model_config>
</sound_trigger_platform_info>
</resource_manager_info>

View File

@@ -0,0 +1,922 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2020, 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. -->
<!-- SPDX-License-Identifier: BSD-3-Clause-Clear -->
<resource_manager_info>
<config_params>
<param key="native_audio_mode" value="multiple_mix_dsp"/>
<param key="max_sessions" value="128"/>
<param key="logging_level" value ="3" />
</config_params>
<config_gapless key="gapless_supported" value="1"/>
<bt_codecs>
<codec codec_format="CODEC_TYPE_AAC" codec_type="enc|dec"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_SBC" codec_type="enc|dec"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_LDAC" codec_type="enc"
codec_library="lib_bt_bundle.so" />
<codec codec_format="CODEC_TYPE_APTX" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_HD" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_AD" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_DUAL_MONO" codec_type="enc"
codec_library="lib_bt_aptx.so" />
<codec codec_format="CODEC_TYPE_APTX_AD_SPEECH" codec_type="enc|dec"
codec_library="lib_bt_aptx.so" />
</bt_codecs>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<config_voice>
<vsid>0xB3000000</vsid>
<mode_map>
<modepair key="0x11C05000" value="0xB3000001"/>
<modepair key="0x11DC5000" value="0xB3000001"/>
<modepair key="0x12006000" value="0xB3000001"/>
<modepair key="0x121C6000" value="0xB3000001"/>
</mode_map>
</config_voice>
<device_profile>
<in-device>
<id>PAL_DEVICE_IN_HANDSET_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>handset-mic</snd_device_name>
<!-- Comment the channels and backend lines and uncomment this when handset-dmic-endfire is needed
<channels>2</channels>
<snd_device_name>handset-dmic-endfire</snd_device_name>
-->
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>HW</sidetone_mode>
<bit_width>16</bit_width>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
<custom-config key="unprocessed-hdr-mic-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-portrait</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-portrait</snd_device_name>
</custom-config>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_HANDSET</id>
<id>PAL_DEVICE_OUT_SPEAKER</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_SPEAKER_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>4</max_channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<channels>1</channels>
<snd_device_name>speaker-mic</snd_device_name>
<!-- Comment the channels and backend lines and uncomment this when speaker-dmic-endfire is needed
<channels>2</channels>
<snd_device_name>speaker-dmic-endfire</snd_device_name>
-->
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>OFF</sidetone_mode>
<bit_width>16</bit_width>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_LOOPBACK</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
<custom-config key="unprocessed-hdr-mic-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-portrait</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-landscape">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-landscape</snd_device_name>
</custom-config>
<custom-config key="unprocessed-hdr-mic-inverted-portrait">
<channels>4</channels>
<snd_device_name>unprocessed-hdr-mic-inverted-portrait</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_WIRED_HEADSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-TX-3</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>headset-mic</snd_device_name>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<sidetone_mode>HW</sidetone_mode>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<priority>1</priority>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
<ec_rx_device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_USB_HEADSET</id>
<back_end_name>USB_AUDIO-TX</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>usb-headset-mic</snd_device_name>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
</usecase>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<sidetone_mode>HW</sidetone_mode>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_FM_TUNER</id>
<back_end_name>SLIM-DEV1-TX-8</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>play-fm</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<usecase>
<name>PAL_STREAM_LOOPBACK</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_PROXY</id>
<back_end_name>PCM_RT_PROXY-TX-1</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<usecase>
<name>PAL_STREAM_PROXY</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_BLUETOOTH_SCO_HEADSET</id>
<back_end_name>SLIM-DEV1-TX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<samplerate>8000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>bt-a2dp</snd_device_name>
<usecase>
<name>PAL_STREAM_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000002"/>
<!-- AUDIO_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_TX</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000007"/>
<!-- VOIP_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<devicePP-metadata>
<kvpair key="0xAD000000" value="0xAD000008"/>
<!-- VOICE_FLUENCE_SMECNS -->
<!-- These key and value are derived from kvh2xml.h and
should always be in sync with it -->
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_ULTRA_LOW_LATENCY</name>
<devicePP-metadata>
</devicePP-metadata>
</usecase>
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<ec_enable>1</ec_enable>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_HANDSET_VA_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_VA-TX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>va-mic</snd_device_name>
<ec_rx_device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
<id>PAL_DEVICE_OUT_HANDSET</id>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_HEADSET_VA_MIC</id>
<back_end_name>CODEC_DMA-LPAIF_VA-TX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>headset-va-mic</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<ec_rx_device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
</ec_rx_device>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_BLUETOOTH_A2DP</id>
<back_end_name>SLIM-DEV1-TX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-a2dp</snd_device_name>
<samplerate>44100</samplerate>
<bit_width>16</bit_width>
</in-device>
<in-device> <!-- Call record -->
<id>PAL_DEVICE_IN_TELEPHONY_RX</id>
<back_end_name>PCM_RT_PROXY-TX-1</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<usecase>
<name>PAL_STREAM_PROXY</name>
</usecase>
</in-device>
<in-device>
<id>PAL_DEVICE_IN_ECHO_REF</id>
<back_end_name>PCM_DUMMY-TX-0</back_end_name>
<snd_device_name>echo-ref-record</snd_device_name>
<max_channels>1</max_channels>
<channels>1</channels>
<bit_width>16</bit_width>
<samplerate>48000</samplerate>
<usecase>
<name>PAL_STREAM_RAW</name>
</usecase>
</in-device>
<out-device>
<id>PAL_DEVICE_NONE</id>
<back_end_name>CODEC_DMA-LPAIF_WSA-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<snd_device_name>none</snd_device_name>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_SPEAKER</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-1</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>speaker</snd_device_name>
<speaker_protection_enabled>0</speaker_protection_enabled>
<cps_enabled>0</cps_enabled>
<is_24_bit_supported>0</is_24_bit_supported>
<Charge_concurrency_enabled>0</Charge_concurrency_enabled>
<!--specify the supported bit format on speaker end point -->
<!--this should be in the form of pal_audio_fmt_id-->
<!--e.g <supported_bit_format >PAL_AUDIO_FMT_PCM_S24_LE</supported_bit_format>-->
<supported_bit_format>PAL_AUDIO_FMT_PCM_S16_LE</supported_bit_format>
<!-- RAS should be enabled with speaker protection always -->
<ras_enabled>0</ras_enabled>
<!-- Flag to specify speaker in case Voice call is switched from
handset to speaker with only 1 speaker.
Values: Both speaker : 0
Right speaker: 1
Left speaker : 2
-->
<speaker_mono_right>0</speaker_mono_right>
<!-- Time in seconds for Quick cal. Set 0 to disable -->
<quick_cal_time>0</quick_cal_time>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>2</priority>
<channels>1</channels>
<snd_device_name>speaker-mono-2</snd_device_name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>3</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_HANDSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>1</channels>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
<snd_device_name>handset</snd_device_name>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>2</priority>
<snd_device_name>voice-handset</snd_device_name>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>3</priority>
<snd_device_name>voice-handset</snd_device_name>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_WIRED_HEADSET</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<fractional_sr>1</fractional_sr>
<snd_device_name>headphones</snd_device_name>
<!--HIFI Filter Headphones-Uncomment this when param key hifi_filter is true
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_PCM_OFFLOAD</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
-->
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>2</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_WIRED_HEADPHONE</id>
<back_end_name>CODEC_DMA-LPAIF_RXTX-RX-0</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<fractional_sr>1</fractional_sr>
<snd_device_name>headphones</snd_device_name>
<!--HIFI Filter Headphones-Uncomment this when param key hifi_filter is true
<usecase>
<name>PAL_STREAM_COMPRESSED</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_PCM_OFFLOAD</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
<usecase>
<name>PAL_STREAM_DEEP_BUFFER</name>
<custom-config key="hifi-filter_custom_key">
<snd_device_name>headphones-hifi-filter</snd_device_name>
</custom-config>
</usecase>
-->
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
<usecase>
<name>PAL_STREAM_VOIP_RX</name>
<priority>2</priority>
<samplerate>48000</samplerate>
<bit_width>16</bit_width>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_USB_DEVICE</id>
<back_end_name>USB_AUDIO-RX</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>usb-headphones</snd_device_name>
<fractional_sr>1</fractional_sr>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_USB_HEADSET</id>
<back_end_name>USB_AUDIO-RX</back_end_name>
<max_channels>2</max_channels>
<channels>2</channels>
<snd_device_name>usb-headphones</snd_device_name>
<fractional_sr>1</fractional_sr>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_PROXY</id>
<back_end_name>PCM_RT_PROXY-RX-1</back_end_name>
<max_channels>8</max_channels>
<channels>2</channels>
<snd_device_name>afe-proxy</snd_device_name>
<fractional_sr>0</fractional_sr>
<samplerate>48000</samplerate>
<usecase>
<name>PAL_STREAM_VOICE_CALL</name>
<priority>1</priority>
</usecase>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_BLUETOOTH_A2DP</id>
<back_end_name>SLIM-DEV1-RX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-a2dp</snd_device_name>
<samplerate>44100</samplerate>
<bit_width>16</bit_width>
</out-device>
<out-device>
<id>PAL_DEVICE_OUT_BLUETOOTH_SCO</id>
<back_end_name>SLIM-DEV1-RX-7</back_end_name>
<max_channels>1</max_channels>
<channels>1</channels>
<snd_device_name>bt-a2dp</snd_device_name>
<samplerate>8000</samplerate>
<bit_width>16</bit_width>
</out-device>
</device_profile>
<in_streams>
<in_stream>
<name>PAL_STREAM_VOIP_TX</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_DEEP_BUFFER</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_VOICE_UI</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_PROXY</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_COMPRESSED</disabled_stream>
<disabled_stream>PAL_STREAM_ULTRA_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
<in_stream>
<name>PAL_STREAM_COMPRESSED</name>
<policies>
<ec_ref>
<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>
<disabled_stream>PAL_STREAM_GENERIC</disabled_stream>
</ec_ref>
</policies>
</in_stream>
</in_streams>
<sound_trigger_platform_info>
<param version="0x0100" /> <!-- this must be the first param -->
<common_config>
<param enable_failure_detection="false" />
<param support_device_switch="true" />
<param support_nlpi_switch="true" />
<param transit_to_non_lpi_on_charging="false" />
<!-- Param used to indicate if SVA has dedicated back end path and
ports not conflicting with other audio paths -->
<param dedicated_sva_path="true" />
<param dedicated_headset_path="false" />
<param lpi_enable="true" />
<param enable_debug_dumps="false" />
<param concurrent_capture="true" />
<param concurrent_voice_call="true" />
<param concurrent_voip_call="true" />
<param low_latency_bargein_enable="false" />
<param mmap_enable="true" />
<param mmap_buffer_duration="5000" />
<param mmap_frame_length="5" /> <!-- 5ms duration of data -->
</common_config>
<capture_profile_list>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="headset-va-mic" />
<param ec_ref="true" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_LPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="headset-va-mic-lpi" />
<param ec_ref="false" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_NLPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="headset-va-mic" />
<param ec_ref="false" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_RAW_LPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_RAW_NLPI">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_RAW_LPI">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000C"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_RAW_NLPI">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000E"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_FFNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000B"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_FFNS">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD00000B"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
<capture_profile name="SINGLE_MIC_16KHZ_16BIT_FFECNS">
<param sample_rate="16000" />
<param channels="1" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="va-mic-mono" />
</capture_profile>
<capture_profile name="DUAL_MIC_16KHZ_16BIT_FFECNS">
<param sample_rate="16000" />
<param channels="2" />
<param bit_width="16" />
<devicePP-metadata>
<!-- see kvh2xml.h -->
<kvpair key="0xAD000000" value="0xAD000001"/>
</devicePP-metadata>
<param snd_name="va-mic-dmic" />
</capture_profile>
</capture_profile_list>
<!-- Multiple sound_model_config tags can be listed, each with unique
-->
<!-- vendor_uuid. The below tag represents QTI SVA sound model -->
<!-- configuration. ISV must use their own unique vendor_uuid.
-->
<!-- QTI SVA -->
<sound_model_config>
<param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b"/>
<!-- durations in us -->
<param kw_start_tolerance="300000" />
<param kw_end_tolerance="240000" />
<param data_before_kw_start="360000" />
<param data_after_kw_end="200000" />
<param merge_first_stage_sound_models="false"/>
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param capture_keyword="1000" /> <!-- Default history buffer length -->
<param client_capture_read_delay="2000" /> <!-- reserved buffer duration for rt data -->
<param pre_roll_duration="500" /> <!-- Default preroll duration -->
<operating_modes>
<low_power capture_profile_handset="SINGLE_MIC_16KHZ_16BIT_RAW_LPI" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_RAW_LPI"/>
<high_performance capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS"/>
<high_performance_and_charging capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_HEADSET_FFECNS"/>
</operating_modes>
<arm_ss_usecase>
<!-- Options are "KEYWORD_DETECTION", "USER_VERIFICATION",
"CUSTOM_DETECTION" -->
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x2" />
<param module_lib="libcapiv2svacnnvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "USER_VERIFICATION" />
<param sm_id="0x4" />
<param module_lib="libcapiv2uvvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x8" />
<param module_lib="libcapiv2svarnnvendor.so"/>
<param sample_rate="16000"/>
<param bit_width="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<module_params>
<param module_type="GMM" />
<param load_sound_model_ids="0xC0000008, 0x0800104C" />
<param wakeup_config_ids="0xC0000008, 0x08001049" />
<param buffering_config_ids="0xC0000008, 0x08001044" />
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000001"/>
</streamConfig-metadata>
</module_params>
<module_params>
<param module_type="PDK" />
<param load_sound_model_ids="0xC0000008, 0x0800124E"/>
<param unload_sound_model_ids="0xC0000008, 0x08001250"/>
<param wakeup_config_ids="0xC0000008, 0x08001049" />
<param buffering_config_ids="0xC0000008, 0x0800124F"/>
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000006"/>
</streamConfig-metadata>
</module_params>
</sound_model_config>
<!-- Hotword -->
<sound_model_config>
<param vendor_uuid="7038ddc8-30f2-11e6-b0ac-40a8f03d3f15"/>
<param get_module_version="false" />
<param kw_start_tolerance="100" />
<param kw_end_tolerance="100" />
<param merge_first_stage_sound_models="false"/>
<param capture_keyword="2000" />
<param client_capture_read_delay="2000" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param capture_keyword="2000" />
<param client_capture_read_delay="2000" />
<operating_modes>
<low_power capture_profile_handset="DUAL_MIC_16KHZ_16BIT_RAW_LPI"/>
<high_performance capture_profile_handset="DUAL_MIC_16KHZ_16BIT_RAW_NLPI"/>
<high_performance_and_charging capture_profile_handset="DUAL_MIC_16KHZ_16BIT_RAW_NLPI"/>
</operating_modes>
<module_params>
<param load_sound_model_ids="0xC0000008, 0x0800104C" />
<param unload_sound_model_ids="0xC0000008, 0x00012C15" />
<param custom_config_ids="0xC0000008, 0x00012C20" />
<param buffering_config_ids="0xC0000008, 0x08001044" />
<param version_ids="0xC0000008, 0x18000101" />
<param engine_reset_ids="0xC0000008, 0x08001051" />
<streamConfig-metadata>
<kvpair key="0xBC000000" value="0xBC000002"/>
</streamConfig-metadata>
</module_params>
</sound_model_config>
</sound_trigger_platform_info>
</resource_manager_info>

File diff suppressed because it is too large Load Diff

View File

@@ -68,7 +68,16 @@ PRODUCT_COPY_FILES += \
$(AUDIO_HAL_DIR)/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
$(LOCAL_PATH)/configs/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml \
$(LOCAL_PATH)/configs/audio/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
$(LOCAL_PATH)/configs/audio/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml
$(LOCAL_PATH)/configs/audio/backend_conf.xml:$(TARGET_COPY_OUT_VENDOR)/etc/backend_conf.xml \
$(LOCAL_PATH)/configs/audio/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
$(LOCAL_PATH)/configs/audio/mixer_paths_bengal_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
$(LOCAL_PATH)/configs/audio/mixer_paths_bengal_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_bengal_idp.xml \
$(LOCAL_PATH)/configs/audio/mixer_paths_bengal_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_bengal_idp_india.xml \
$(LOCAL_PATH)/configs/audio/mixer_paths_bengal_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_bengal_qrd.xml \
$(LOCAL_PATH)/configs/audio/resourcemanager_bengal_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager.xml \
$(LOCAL_PATH)/configs/audio/resourcemanager_bengal_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_bengal_idp.xml \
$(LOCAL_PATH)/configs/audio/resourcemanager_bengal_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/resourcemanager_bengal_qrd.xml \
$(LOCAL_PATH)/configs/audio/usecaseKvManager.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usecaseKvManager.xml
PRODUCT_COPY_FILES += \
frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml \

View File

@@ -112,15 +112,9 @@ vendor/etc/audio_policy_engine_configuration_mi.xml:vendor/etc/audio_policy_engi
vendor/etc/audio_policy_engine_default_stream_volumes.xml
vendor/etc/audio_policy_engine_product_strategies.xml
vendor/etc/audio_policy_engine_stream_volumes.xml
vendor/etc/backend_conf.xml
vendor/etc/card-defs.xml
vendor/etc/mixer_paths_bengal_idp_india.xml
vendor/etc/mixer_paths_bengal_idp.xml
vendor/etc/mixer_paths_bengal_qrd.xml
vendor/etc/mixer_paths_scubaidp.xml
vendor/etc/mixer_paths_scubaqrd.xml
vendor/etc/resourcemanager_bengal_idp.xml
vendor/etc/resourcemanager_bengal_qrd.xml
vendor/etc/resourcemanager_scubaidp.xml
vendor/etc/resourcemanager_scubaqrd.xml
@@ -1104,7 +1098,6 @@ vendor/etc/vintf/manifest/vendor.qti.hardware.lights.service.xml
vendor/etc/vintf/manifest/manifest_non_qmaa.xml
vendor/etc/vintf/manifest/manifest_non_qmaa_extn.xml
vendor/etc/microphone_characteristics.xml
vendor/etc/usecaseKvManager.xml
vendor/lib/hw/sound_trigger.primary.bengal.so
vendor/lib/libcapiv2svacnnvendor.so
vendor/lib/libcapiv2svarnnvendor.so