| <?xml version="1.0" encoding="ISO-8859-1"?> |
| <!-- Copyright (c) 2019-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, --> |
| <!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> |
| <!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> |
| <resource_manager_info> |
| <pcm_ids> |
| <device name="PAL_DEVICE_OUT_SPEAKER" pcm_id="0" hw_intf="slim-0-rx" snd_device_name="speaker" back_end_name="SLIM-DEV1-RX-0"/> |
| <device name="PAL_DEVICE_OUT_HANDSET" pcm_id="0" hw_intf="slim-0-rx" snd_device_name="handset" back_end_name="SLIM-DEV1-RX-0"/> |
| <device name="PAL_DEVICE_OUT_WIRED_HEADPHONE" pcm_id="0" hw_intf="slim-6-rx" snd_device_name="headphones" back_end_name="SLIM-DEV1-RX-6"/> |
| <device name="PAL_DEVICE_OUT_WIRED_HEADSET" pcm_id="0" hw_intf="slim-6-rx" snd_device_name="headphones" back_end_name="SLIM-DEV1-RX-6"/> |
| <device name="PAL_DEVICE_OUT_BLUETOOTH_A2DP" pcm_id="0" hw_intf="slim-7-rx" snd_device_name="bt-a2dp" back_end_name="SLIM-DEV2-RX-7"/> |
| <device name="PAL_DEVICE_OUT_BLUETOOTH_SCO" pcm_id="0" hw_intf="slim-7-rx" snd_device_name="bt-a2dp" back_end_name="SLIM-DEV2-RX-7"/> |
| <device name="PAL_DEVICE_OUT_AUX_DIGITAL" pcm_id="0" hw_intf="dp-0-rx" snd_device_name="display-port" back_end_name="DISPLAY_PORT-RX"/> |
| <device name="PAL_DEVICE_OUT_HDMI" pcm_id="0" hw_intf="dp-0-rx" snd_device_name="display-port" back_end_name="DISPLAY_PORT-RX"/> |
| <device name="PAL_DEVICE_OUT_USB_DEVICE" pcm_id="0" hw_intf="usb_audio" snd_device_name="usb-headphones" back_end_name="USB_AUDIO-RX"/> |
| <device name="PAL_DEVICE_OUT_USB_HEADSET" pcm_id="0" hw_intf="usb_audio" snd_device_name="usb-headphones" back_end_name="USB_AUDIO-RX"/> |
| <device name="PAL_DEVICE_OUT_AUX_DIGITAL" pcm_id="0" hw_intf="dp-0-rx" snd_device_name="display-port" back_end_name="DISPLAY_PORT-RX"/> |
| <device name="PAL_DEVICE_OUT_HDMI" pcm_id="0" hw_intf="dp-0-rx" snd_device_name="display-port" back_end_name="DISPLAY_PORT-RX"/> |
| <device name="PAL_DEVICE_IN_HANDSET_MIC" pcm_id="1" hw_intf="slim-0-tx" snd_device_name="handset-mic" back_end_name="SLIM-DEV1-TX-0"/> |
| <device name="PAL_DEVICE_IN_SPEAKER_MIC" pcm_id="1" hw_intf="slim-0-tx" snd_device_name="speaker-tmic" back_end_name="SLIM-DEV1-TX-0"/> |
| <device name="PAL_DEVICE_IN_WIRED_HEADSET" pcm_id="1" hw_intf="slim-1-tx" snd_device_name="headset-mic" back_end_name="SLIM-DEV1-TX-0"/> |
| <device name="PAL_DEVICE_IN_BLUETOOTH_SCO_HEADSET" pcm_id="1" hw_intf="slim-7-tx" snd_device_name="bt-a2dp" back_end_name="SLIM-DEV2-TX-7"/> |
| <device name="PAL_DEVICE_IN_USB_DEVICE" pcm_id="1" hw_intf="usb_audio" snd_device_name="usb-headset-mic" back_end_name="USB_AUDIO-TX"/> |
| <device name="PAL_DEVICE_IN_USB_HEADSET" pcm_id="1" hw_intf="usb_audio" snd_device_name="usb-headset-mic" back_end_name="USB_AUDIO-TX"/> |
| </pcm_ids> |
| <config_params> |
| <param key="native_audio_mode" value="multiple_mix_dsp"/> |
| <param key="max_sessions" value="128"/> |
| </config_params> |
| <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" /> |
| </bt_codecs> |
| <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>SLIM-DEV1-TX-0</back_end_name> |
| <max_channels>2</max_channels> |
| <channels>1</channels> |
| <snd_device_name>handset-mic</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_LOW_LATENCY</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_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- 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> |
| </in-device> |
| <in-device> |
| <id>PAL_DEVICE_IN_SPEAKER_MIC</id> |
| <back_end_name>SLIM-DEV1-TX-0</back_end_name> |
| <max_channels>4</max_channels> |
| <channels>1</channels> |
| <snd_device_name>speaker-mic</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_LOW_LATENCY</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_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- 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> |
| </in-device> |
| <in-device> |
| <id>PAL_DEVICE_IN_WIRED_HEADSET</id> |
| <back_end_name>SLIM-DEV1-TX-0</back_end_name> |
| <max_channels>1</max_channels> |
| <channels>1</channels> |
| <snd_device_name>headset-mic</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_LOW_LATENCY</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_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- 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> |
| </in-device> |
| <in-device> |
| <id>PAL_DEVICE_IN_BLUETOOTH_SCO_HEADSET</id> |
| <back_end_name>SLIM-DEV2-TX-7</back_end_name> |
| <max_channels>1</max_channels> |
| <channels>1</channels> |
| <snd_device_name>bt-a2dp</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_LOW_LATENCY</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_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- These key and value are derived from kvh2xml.h and should always be in sync with it --> |
| </devicePP-metadata> |
| </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>1</channels> |
| <snd_device_name>va-mic</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_VOICE_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- These key and value are derived from kvh2xml.h and should always be in sync with it --> |
| </devicePP-metadata> |
| </usecase> |
| </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> |
| <usecase> |
| <name>PAL_STREAM_VOICE_UI</name> |
| <devicePP-metadata> |
| <kvpair key="0xAD000000" value="0xAD000001"/> |
| <!-- VOICE_UI_FLUENCE_FFECNS --> |
| <!-- These key and value are derived from kvh2xml.h and should always be in sync with it --> |
| </devicePP-metadata> |
| </usecase> |
| </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> |
| <snd_device_name>usb-headset-mic</snd_device_name> |
| <usecase> |
| <name>PAL_STREAM_VOICE_CALL</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_LOW_LATENCY</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> |
| </in-device> |
| <out_devices/> |
| </device_profile> |
| <in_streams> |
| <in_stream> |
| <name>PAL_STREAM_VOIP_TX</name> |
| <policies> |
| <ec_ref> |
| <!--<disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream>--> |
| </ec_ref> |
| </policies> |
| </in_stream> |
| <in_stream> |
| <name>PAL_STREAM_LOW_LATENCY</name> |
| <policies> |
| <ec_ref> |
| <disabled_stream>PAL_STREAM_LOW_LATENCY</disabled_stream> |
| <!--<disabled_stream>PAL_STREAM_ULTRA_LOW_LATENCY</disabled_stream>--> |
| </ec_ref> |
| </policies> |
| </in_stream> |
| <in_stream> |
| <name>PAL_STREAM_VOICE_UI</name> |
| <policies> |
| <ec_ref> |
| <disabled_stream>PAL_STREAM_LOW_LATENCY</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 max_sessions="8" /> |
| <param enable_failure_detection="false" /> |
| <param support_device_switch="false" /> |
| <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" /> |
| </common_config> |
| |
| <capture_profile_list> |
| <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="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFNS"/> |
| </devicePP-metadata> |
| </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="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFNS"/> |
| </devicePP-metadata> |
| </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="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFECNS"/> |
| </devicePP-metadata> |
| </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="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFECNS"/> |
| </devicePP-metadata> |
| </capture_profile> |
| <capture_profile name="TRI_MIC_16KHZ_16BIT_FFECNS"> |
| <param sample_rate="16000" /> |
| <param channels="3" /> |
| <param bit_width="16" /> |
| <devicePP-metadata> |
| <!-- see kvh2xml.h --> |
| <kvpair key="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFECNS"/> |
| </devicePP-metadata> |
| </capture_profile> |
| <capture_profile name="QUAD_MIC_16KHZ_16BIT_FFECNS"> |
| <param sample_rate="16000" /> |
| <param channels="4" /> |
| <param bit_width="16" /> |
| <devicePP-metadata> |
| <!-- see kvh2xml.h --> |
| <kvpair key="DEVICEPP_TX" value="DEVICEPP_TX_FLUENCE_FFECNS"/> |
| </devicePP-metadata> |
| </capture_profile> |
| </capture_profile_list> |
| <!-- Multiple sound_model_config tags can be listed, each with unique --> |
| <!-- vendor_uuid. The below tag represents QTI SVA engine sound model --> |
| <!-- configuration. ISV must use their own unique vendor_uuid. --> |
| <!-- QTI SVA --> |
| <sound_model_config> |
| <param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" /> |
| <param kw_start_tolerance="100" /> |
| <param kw_end_tolerance="100" /> |
| <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="2000" /> |
| <param client_capture_read_delay="2000" /> |
| <operating_modes> |
| <low_power capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_FFNS"/> |
| <high_performance capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_FFECNS"/> |
| <high_performance_and_charging capture_profile_handset="DUAL_MIC_16KHZ_16BIT_FFECNS" capture_profile_headset="SINGLE_MIC_16KHZ_16BIT_FFECNS"/> |
| </operating_modes> |
| </sound_model_config> |
| </sound_trigger_platform_info> |
| </resource_manager_info> |