Merge "configs: update sound trigger to support hotsound" into av-userspace.lnx.2.0-dev
diff --git a/configs/msm8937/sound_trigger_mixer_paths_wcd9335.xml b/configs/msm8937/sound_trigger_mixer_paths_wcd9335.xml
index aaf2981..94d00c5 100644
--- a/configs/msm8937/sound_trigger_mixer_paths_wcd9335.xml
+++ b/configs/msm8937/sound_trigger_mixer_paths_wcd9335.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<!--- Copyright (c) 2015, The Linux Foundation. All rights reserved.
+<!--- Copyright (c) 2015-2016, 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
@@ -45,6 +45,10 @@
     <ctl name="AIF4_MAD Mixer SLIM TX12" value="0" />
     <ctl name="AIF4_MAD Mixer SLIM TX13" value="0" />
     <ctl name="CPE AFE MAD Enable" value="0"/>
+    <ctl name="CLK MODE" value="EXTERNAL" />
+    <ctl name="EC BUF MUX INP" value="ZERO" />
+    <ctl name="ADC MUX1" value="DMIC" />
+    <ctl name="DMIC MUX1" value="ZERO" />
 
     <path name="listen-voice-wakeup-1">
         <ctl name="SLIMBUS_5_TX LSM Function" value="AUDIO" />
@@ -88,13 +92,20 @@
         <ctl name="CPE AFE MAD Enable" value="1"/>
     </path>
 
+    <path name="listen-cpe-handset-mic-ecpp">
+        <ctl name="CLK MODE" value="INTERNAL" />
+        <ctl name="EC BUF MUX INP" value="DEC1" />
+        <ctl name="ADC MUX1" value="DMIC" />
+        <ctl name="DMIC MUX1" value="DMIC0" />
+    </path>
+
     <!-- path name used for low bandwidth FTRT codec interface -->
     <path name="listen-cpe-handset-mic low-speed-intf">
         <ctl name="MADONOFF Switch" value="1" />
         <ctl name="AIF4_MAD Mixer SLIM TX12" value="1" />
         <ctl name="MAD Input" value="DMIC0" />
         <ctl name="CPE AFE MAD Enable" value="1"/>
-     </path>
+    </path>
 
     <path name="listen-ape-handset-mic">
         <ctl name="MAD_BROADCAST Switch" value="1" />
diff --git a/configs/msm8937/sound_trigger_platform_info.xml b/configs/msm8937/sound_trigger_platform_info.xml
index 752ce99..28026f7 100644
--- a/configs/msm8937/sound_trigger_platform_info.xml
+++ b/configs/msm8937/sound_trigger_platform_info.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<!--- Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.       -->
+<!--- Copyright (c) 2013-2016, 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    -->
@@ -26,35 +26,48 @@
 <!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN    -->
 <!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                             -->
 <sound_trigger_platform_info>
-    <device name="DEVICE_HANDSET_APE_ACDB_ID" value="130" />
-    <device name="DEVICE_HANDSET_CPE_ACDB_ID" value="128" />
-    <ctrl name="execution_type" value="APE" /> <!-- value: "CPE" "APE" -->
-    <ctrl name="max_cpe_sessions" value="1" />
-    <ctrl name="max_ape_sessions" value="5" />
-    <ctrl name="enable_failure_detection" value="false" />
-    <ctrl name="rx_concurrency_disabled" value="true" />
-    <ctrl name="rx_conc_max_st_ses" value="1" />
+    <param version="0x0101" /> <!-- this must be the first param -->
 
-    <!-- vendor_uuid for a soundmodel. More than one vendor_uuid tags can be -->
-    <!-- listed in sequence, the below vendor uuid is reserved for QTI  -->
-    <!-- module. ISV must use their own unique vendor uuid. app_type,        -->
-    <!-- module_id, param_id must match to the calibration database          -->
-    <!-- If ISV vendor_uuid is present, execution_type will be forced to APE -->
-    <vendor_uuid value="68ab2d40-e860-11e3-95ef-0002a5d5c51b" app_type="2" library="libsmwrapper.so">
+    <common_config>
+        <param execution_type="APE" /> <!-- value: "CPE" "APE" -->
+        <param max_cpe_sessions="1" />
+        <param max_ape_sessions="5" />
+        <param enable_failure_detection="false" />
+        <param rx_concurrency_disabled="true" />
+        <param rx_conc_max_st_ses="1" />
+    </common_config>
+
+    <acdb_ids>
+        <param DEVICE_HANDSET_APE_ACDB_ID="130" />
+        <param DEVICE_HANDSET_CPE_ACDB_ID="128" />
+        <param DEVICE_HANDSET_CPE_ECPP_ACDB_ID="128" />
+    </acdb_ids>
+
+    <!-- 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.           -->
+    <sound_model_config>
+        <param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" />
+        <param app_type="2" /> <!-- app type used in ACDB -->
+        <param library="libsmwrapper.so" />
+        <param max_cpe_phrases="6" />
+        <param max_cpe_users="3" />
+        <param max_ape_phrases="10" />
+        <param max_ape_users="10" />
+        <param sample_rate="16000" />
+
+        <!-- Module and param ids with which the algorithm is integrated in firmware -->
+        <param load_sound_model_ids="0x00012C0D, 0x00012C14" />
+        <param unload_sound_model_ids="0x00012C0D, 0x00012C15" />
+        <param confidence_levels_ids="0x00012C0D, 0x00012C07" />
+        <param operation_mode_ids="0x00012C0D, 0x00012C02" />
+
         <!-- format: "ADPCM_packet" or "PCM_packet" !-->
         <!-- transfer_mode: "FTRT" or "RT" -->
         <!--  kw_duration is in milli seconds. It is valid only for FTRT transfer mode -->
-        <capture_keyword format="PCM_packet" transfer_mode="RT" kw_duration="2000" />
-        <param_type name="load_sound_model" module_id="0x00012C0D" param_id="0x00012C14"/>
-        <param_type name="unload_sound_model" module_id="0x00012C0D" param_id="0x00012C15"/>
-        <param_type name="confidence_levels" module_id="0x00012C0D" param_id="0x00012C07"/>
-        <param_type name="operation_mode" module_id="0x00012C0D" param_id="0x00012C02"/>
-        <ctrl name="max_cpe_phrases" value="6" />
-        <ctrl name="max_cpe_users" value="3" />
-        <ctrl name="max_ape_phrases" value="10" />
-        <ctrl name="max_ape_users" value="10" />
-        <ctrl name="client_capture_read_delay" value="2000" /> <!-- in milli seconds -->
-    </vendor_uuid>
+        <param capture_keyword="PCM_packet, RT, 2000" />
+        <param client_capture_read_delay="2000" />
+    </sound_model_config>
 
 </sound_trigger_platform_info>
 
diff --git a/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml b/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml
index aaf2981..94d00c5 100644
--- a/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml
+++ b/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<!--- Copyright (c) 2015, The Linux Foundation. All rights reserved.
+<!--- Copyright (c) 2015-2016, 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
@@ -45,6 +45,10 @@
     <ctl name="AIF4_MAD Mixer SLIM TX12" value="0" />
     <ctl name="AIF4_MAD Mixer SLIM TX13" value="0" />
     <ctl name="CPE AFE MAD Enable" value="0"/>
+    <ctl name="CLK MODE" value="EXTERNAL" />
+    <ctl name="EC BUF MUX INP" value="ZERO" />
+    <ctl name="ADC MUX1" value="DMIC" />
+    <ctl name="DMIC MUX1" value="ZERO" />
 
     <path name="listen-voice-wakeup-1">
         <ctl name="SLIMBUS_5_TX LSM Function" value="AUDIO" />
@@ -88,13 +92,20 @@
         <ctl name="CPE AFE MAD Enable" value="1"/>
     </path>
 
+    <path name="listen-cpe-handset-mic-ecpp">
+        <ctl name="CLK MODE" value="INTERNAL" />
+        <ctl name="EC BUF MUX INP" value="DEC1" />
+        <ctl name="ADC MUX1" value="DMIC" />
+        <ctl name="DMIC MUX1" value="DMIC0" />
+    </path>
+
     <!-- path name used for low bandwidth FTRT codec interface -->
     <path name="listen-cpe-handset-mic low-speed-intf">
         <ctl name="MADONOFF Switch" value="1" />
         <ctl name="AIF4_MAD Mixer SLIM TX12" value="1" />
         <ctl name="MAD Input" value="DMIC0" />
         <ctl name="CPE AFE MAD Enable" value="1"/>
-     </path>
+    </path>
 
     <path name="listen-ape-handset-mic">
         <ctl name="MAD_BROADCAST Switch" value="1" />
diff --git a/configs/msm8953/sound_trigger_platform_info.xml b/configs/msm8953/sound_trigger_platform_info.xml
index 752ce99..28026f7 100644
--- a/configs/msm8953/sound_trigger_platform_info.xml
+++ b/configs/msm8953/sound_trigger_platform_info.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<!--- Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.       -->
+<!--- Copyright (c) 2013-2016, 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    -->
@@ -26,35 +26,48 @@
 <!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN    -->
 <!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                             -->
 <sound_trigger_platform_info>
-    <device name="DEVICE_HANDSET_APE_ACDB_ID" value="130" />
-    <device name="DEVICE_HANDSET_CPE_ACDB_ID" value="128" />
-    <ctrl name="execution_type" value="APE" /> <!-- value: "CPE" "APE" -->
-    <ctrl name="max_cpe_sessions" value="1" />
-    <ctrl name="max_ape_sessions" value="5" />
-    <ctrl name="enable_failure_detection" value="false" />
-    <ctrl name="rx_concurrency_disabled" value="true" />
-    <ctrl name="rx_conc_max_st_ses" value="1" />
+    <param version="0x0101" /> <!-- this must be the first param -->
 
-    <!-- vendor_uuid for a soundmodel. More than one vendor_uuid tags can be -->
-    <!-- listed in sequence, the below vendor uuid is reserved for QTI  -->
-    <!-- module. ISV must use their own unique vendor uuid. app_type,        -->
-    <!-- module_id, param_id must match to the calibration database          -->
-    <!-- If ISV vendor_uuid is present, execution_type will be forced to APE -->
-    <vendor_uuid value="68ab2d40-e860-11e3-95ef-0002a5d5c51b" app_type="2" library="libsmwrapper.so">
+    <common_config>
+        <param execution_type="APE" /> <!-- value: "CPE" "APE" -->
+        <param max_cpe_sessions="1" />
+        <param max_ape_sessions="5" />
+        <param enable_failure_detection="false" />
+        <param rx_concurrency_disabled="true" />
+        <param rx_conc_max_st_ses="1" />
+    </common_config>
+
+    <acdb_ids>
+        <param DEVICE_HANDSET_APE_ACDB_ID="130" />
+        <param DEVICE_HANDSET_CPE_ACDB_ID="128" />
+        <param DEVICE_HANDSET_CPE_ECPP_ACDB_ID="128" />
+    </acdb_ids>
+
+    <!-- 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.           -->
+    <sound_model_config>
+        <param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" />
+        <param app_type="2" /> <!-- app type used in ACDB -->
+        <param library="libsmwrapper.so" />
+        <param max_cpe_phrases="6" />
+        <param max_cpe_users="3" />
+        <param max_ape_phrases="10" />
+        <param max_ape_users="10" />
+        <param sample_rate="16000" />
+
+        <!-- Module and param ids with which the algorithm is integrated in firmware -->
+        <param load_sound_model_ids="0x00012C0D, 0x00012C14" />
+        <param unload_sound_model_ids="0x00012C0D, 0x00012C15" />
+        <param confidence_levels_ids="0x00012C0D, 0x00012C07" />
+        <param operation_mode_ids="0x00012C0D, 0x00012C02" />
+
         <!-- format: "ADPCM_packet" or "PCM_packet" !-->
         <!-- transfer_mode: "FTRT" or "RT" -->
         <!--  kw_duration is in milli seconds. It is valid only for FTRT transfer mode -->
-        <capture_keyword format="PCM_packet" transfer_mode="RT" kw_duration="2000" />
-        <param_type name="load_sound_model" module_id="0x00012C0D" param_id="0x00012C14"/>
-        <param_type name="unload_sound_model" module_id="0x00012C0D" param_id="0x00012C15"/>
-        <param_type name="confidence_levels" module_id="0x00012C0D" param_id="0x00012C07"/>
-        <param_type name="operation_mode" module_id="0x00012C0D" param_id="0x00012C02"/>
-        <ctrl name="max_cpe_phrases" value="6" />
-        <ctrl name="max_cpe_users" value="3" />
-        <ctrl name="max_ape_phrases" value="10" />
-        <ctrl name="max_ape_users" value="10" />
-        <ctrl name="client_capture_read_delay" value="2000" /> <!-- in milli seconds -->
-    </vendor_uuid>
+        <param capture_keyword="PCM_packet, RT, 2000" />
+        <param client_capture_read_delay="2000" />
+    </sound_model_config>
 
 </sound_trigger_platform_info>
 
diff --git a/configs/msm8996/sound_trigger_mixer_paths.xml b/configs/msm8996/sound_trigger_mixer_paths.xml
index 4136e98..0125371 100644
--- a/configs/msm8996/sound_trigger_mixer_paths.xml
+++ b/configs/msm8996/sound_trigger_mixer_paths.xml
@@ -44,6 +44,10 @@
     <ctl name="AIF4_MAD Mixer SLIM TX12" value="0" />
     <ctl name="AIF4_MAD Mixer SLIM TX13" value="0" />
     <ctl name="CPE AFE MAD Enable" value="0"/>
+    <ctl name="CLK MODE" value="EXTERNAL" />
+    <ctl name="EC BUF MUX INP" value="ZERO" />
+    <ctl name="ADC MUX1" value="DMIC" />
+    <ctl name="DMIC MUX1" value="ZERO" />
 
     <path name="listen-voice-wakeup-1">
         <ctl name="SLIMBUS_5_TX LSM Function" value="AUDIO" />
@@ -87,6 +91,13 @@
         <ctl name="CPE AFE MAD Enable" value="1"/>
     </path>
 
+    <path name="listen-cpe-handset-mic-ecpp">
+        <ctl name="CLK MODE" value="INTERNAL" />
+        <ctl name="EC BUF MUX INP" value="DEC1" />
+        <ctl name="ADC MUX1" value="DMIC" />
+        <ctl name="DMIC MUX1" value="DMIC0" />
+    </path>
+
     <!-- path name used for low bandwidth FTRT codec interface -->
     <path name="listen-cpe-handset-mic low-speed-intf">
         <ctl name="MADONOFF Switch" value="1" />
diff --git a/configs/msm8996/sound_trigger_platform_info.xml b/configs/msm8996/sound_trigger_platform_info.xml
index 675f232..b92ea48 100644
--- a/configs/msm8996/sound_trigger_platform_info.xml
+++ b/configs/msm8996/sound_trigger_platform_info.xml
@@ -26,33 +26,45 @@
 <!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN    -->
 <!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                             -->
 <sound_trigger_platform_info>
-    <device name="DEVICE_HANDSET_APE_ACDB_ID" value="100" />
-    <device name="DEVICE_HANDSET_CPE_ACDB_ID" value="128" />
-    <ctrl name="execution_type" value="CPE" /> <!-- value: "CPE" "APE" -->
-    <ctrl name="max_cpe_sessions" value="1" />
-    <ctrl name="max_ape_sessions" value="8" />
-    <ctrl name="enable_failure_detection" value="false" />
+    <param version="0x0101" /> <!-- this must be the first param -->
 
-    <!-- vendor_uuid for a soundmodel. More than one vendor_uuid tags can be -->
-    <!-- listed in sequence, the below vendor uuid is reserved for QTI  -->
-    <!-- module. ISV must use their own unique vendor uuid. app_type,        -->
-    <!-- module_id, param_id must match to the calibration database          -->
-    <!-- If ISV vendor_uuid is present, execution_type will be forced to APE -->
-    <vendor_uuid value="68ab2d40-e860-11e3-95ef-0002a5d5c51b" app_type="2" library="libsmwrapper.so">
+    <common_config>
+        <param execution_type="CPE" /> <!-- value: "CPE" "APE" -->
+        <param max_cpe_sessions="1" />
+        <param max_ape_sessions="8" />
+        <param enable_failure_detection="false" />
+    </common_config>
+
+    <acdb_ids>
+        <param DEVICE_HANDSET_APE_ACDB_ID="100" />
+        <param DEVICE_HANDSET_CPE_ACDB_ID="128" />
+        <param DEVICE_HANDSET_CPE_ECPP_ACDB_ID="128" />
+    </acdb_ids>
+
+    <!-- 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.           -->
+    <sound_model_config>
+        <param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" />
+        <param app_type="2" /> <!-- app type used in ACDB -->
+        <param library="libsmwrapper.so" />
+        <param max_cpe_phrases="6" />
+        <param max_cpe_users="3" />
+        <param max_ape_phrases="10" />
+        <param max_ape_users="10" />
+        <param sample_rate="16000" />
+
+        <!-- Module and param ids with which the algorithm is integrated in firmware -->
+        <param load_sound_model_ids="0x00012C0D, 0x00012C14" />
+        <param unload_sound_model_ids="0x00012C0D, 0x00012C15" />
+        <param confidence_levels_ids="0x00012C0D, 0x00012C07" />
+        <param operation_mode_ids="0x00012C0D, 0x00012C02" />
+
         <!-- format: "ADPCM_packet" or "PCM_packet" !-->
         <!-- transfer_mode: "FTRT" or "RT" -->
         <!--  kw_duration is in milli seconds. It is valid only for FTRT transfer mode -->
-        <capture_keyword format="PCM_packet" transfer_mode="RT" kw_duration="2000" />
-        <param_type name="load_sound_model" module_id="0x00012C0D" param_id="0x00012C14"/>
-        <param_type name="unload_sound_model" module_id="0x00012C0D" param_id="0x00012C15"/>
-        <param_type name="confidence_levels" module_id="0x00012C0D" param_id="0x00012C07"/>
-        <param_type name="operation_mode" module_id="0x00012C0D" param_id="0x00012C02"/>
-        <ctrl name="max_cpe_phrases" value="6" />
-        <ctrl name="max_cpe_users" value="3" />
-        <ctrl name="max_ape_phrases" value="10" />
-        <ctrl name="max_ape_users" value="10" />
-        <ctrl name="client_capture_read_delay" value="2000" /> <!-- in milli seconds -->
-    </vendor_uuid>
+        <param capture_keyword="PCM_packet, RT, 2000" />
+        <param client_capture_read_delay="2000" />
+    </sound_model_config>
 
 </sound_trigger_platform_info>
-
diff --git a/configs/msmcobalt/sound_trigger_mixer_paths.xml b/configs/msmcobalt/sound_trigger_mixer_paths.xml
index 4136e98..0125371 100644
--- a/configs/msmcobalt/sound_trigger_mixer_paths.xml
+++ b/configs/msmcobalt/sound_trigger_mixer_paths.xml
@@ -44,6 +44,10 @@
     <ctl name="AIF4_MAD Mixer SLIM TX12" value="0" />
     <ctl name="AIF4_MAD Mixer SLIM TX13" value="0" />
     <ctl name="CPE AFE MAD Enable" value="0"/>
+    <ctl name="CLK MODE" value="EXTERNAL" />
+    <ctl name="EC BUF MUX INP" value="ZERO" />
+    <ctl name="ADC MUX1" value="DMIC" />
+    <ctl name="DMIC MUX1" value="ZERO" />
 
     <path name="listen-voice-wakeup-1">
         <ctl name="SLIMBUS_5_TX LSM Function" value="AUDIO" />
@@ -87,6 +91,13 @@
         <ctl name="CPE AFE MAD Enable" value="1"/>
     </path>
 
+    <path name="listen-cpe-handset-mic-ecpp">
+        <ctl name="CLK MODE" value="INTERNAL" />
+        <ctl name="EC BUF MUX INP" value="DEC1" />
+        <ctl name="ADC MUX1" value="DMIC" />
+        <ctl name="DMIC MUX1" value="DMIC0" />
+    </path>
+
     <!-- path name used for low bandwidth FTRT codec interface -->
     <path name="listen-cpe-handset-mic low-speed-intf">
         <ctl name="MADONOFF Switch" value="1" />
diff --git a/configs/msmcobalt/sound_trigger_platform_info.xml b/configs/msmcobalt/sound_trigger_platform_info.xml
index 675f232..b92ea48 100644
--- a/configs/msmcobalt/sound_trigger_platform_info.xml
+++ b/configs/msmcobalt/sound_trigger_platform_info.xml
@@ -26,33 +26,45 @@
 <!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN    -->
 <!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                             -->
 <sound_trigger_platform_info>
-    <device name="DEVICE_HANDSET_APE_ACDB_ID" value="100" />
-    <device name="DEVICE_HANDSET_CPE_ACDB_ID" value="128" />
-    <ctrl name="execution_type" value="CPE" /> <!-- value: "CPE" "APE" -->
-    <ctrl name="max_cpe_sessions" value="1" />
-    <ctrl name="max_ape_sessions" value="8" />
-    <ctrl name="enable_failure_detection" value="false" />
+    <param version="0x0101" /> <!-- this must be the first param -->
 
-    <!-- vendor_uuid for a soundmodel. More than one vendor_uuid tags can be -->
-    <!-- listed in sequence, the below vendor uuid is reserved for QTI  -->
-    <!-- module. ISV must use their own unique vendor uuid. app_type,        -->
-    <!-- module_id, param_id must match to the calibration database          -->
-    <!-- If ISV vendor_uuid is present, execution_type will be forced to APE -->
-    <vendor_uuid value="68ab2d40-e860-11e3-95ef-0002a5d5c51b" app_type="2" library="libsmwrapper.so">
+    <common_config>
+        <param execution_type="CPE" /> <!-- value: "CPE" "APE" -->
+        <param max_cpe_sessions="1" />
+        <param max_ape_sessions="8" />
+        <param enable_failure_detection="false" />
+    </common_config>
+
+    <acdb_ids>
+        <param DEVICE_HANDSET_APE_ACDB_ID="100" />
+        <param DEVICE_HANDSET_CPE_ACDB_ID="128" />
+        <param DEVICE_HANDSET_CPE_ECPP_ACDB_ID="128" />
+    </acdb_ids>
+
+    <!-- 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.           -->
+    <sound_model_config>
+        <param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" />
+        <param app_type="2" /> <!-- app type used in ACDB -->
+        <param library="libsmwrapper.so" />
+        <param max_cpe_phrases="6" />
+        <param max_cpe_users="3" />
+        <param max_ape_phrases="10" />
+        <param max_ape_users="10" />
+        <param sample_rate="16000" />
+
+        <!-- Module and param ids with which the algorithm is integrated in firmware -->
+        <param load_sound_model_ids="0x00012C0D, 0x00012C14" />
+        <param unload_sound_model_ids="0x00012C0D, 0x00012C15" />
+        <param confidence_levels_ids="0x00012C0D, 0x00012C07" />
+        <param operation_mode_ids="0x00012C0D, 0x00012C02" />
+
         <!-- format: "ADPCM_packet" or "PCM_packet" !-->
         <!-- transfer_mode: "FTRT" or "RT" -->
         <!--  kw_duration is in milli seconds. It is valid only for FTRT transfer mode -->
-        <capture_keyword format="PCM_packet" transfer_mode="RT" kw_duration="2000" />
-        <param_type name="load_sound_model" module_id="0x00012C0D" param_id="0x00012C14"/>
-        <param_type name="unload_sound_model" module_id="0x00012C0D" param_id="0x00012C15"/>
-        <param_type name="confidence_levels" module_id="0x00012C0D" param_id="0x00012C07"/>
-        <param_type name="operation_mode" module_id="0x00012C0D" param_id="0x00012C02"/>
-        <ctrl name="max_cpe_phrases" value="6" />
-        <ctrl name="max_cpe_users" value="3" />
-        <ctrl name="max_ape_phrases" value="10" />
-        <ctrl name="max_ape_users" value="10" />
-        <ctrl name="client_capture_read_delay" value="2000" /> <!-- in milli seconds -->
-    </vendor_uuid>
+        <param capture_keyword="PCM_packet, RT, 2000" />
+        <param client_capture_read_delay="2000" />
+    </sound_model_config>
 
 </sound_trigger_platform_info>
-