hal: Dolby trumpet security changes

- ip-handler interface audio extension module changes to
  handle ADSP trumpet  security mechanism.
- Send the library ion fd to driver to assign the corresponding
  memory to DSP for decryption of the decoder library.
- adsp handler changes to handle COPP events from ADSP

Change-Id: I4e7628111bd482faa98c6d3ba9453d22c9dad755
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index a428f9a..aa9d16e 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1658,9 +1658,9 @@
 
     if (enable) {
         if (!voice_extn_is_compress_voip_supported()) {
-        if (adev->mode == AUDIO_MODE_IN_COMMUNICATION)
-            strlcat(ec_ref_mixer_path, "-voip", MIXER_PATH_MAX_LENGTH);
-        }        
+            if (adev->mode == AUDIO_MODE_IN_COMMUNICATION)
+                strlcat(ec_ref_mixer_path, "-voip", MIXER_PATH_MAX_LENGTH);
+        }
         strlcpy(my_data->ec_ref_mixer_path, ec_ref_mixer_path,
                     MIXER_PATH_MAX_LENGTH);
         /*
@@ -9571,6 +9571,9 @@
         ret = -EINVAL;
         goto ERROR_RETURN;
     }
+    if ((cal->acdb_dev_id == ACDB_ID_STEREO_SPEAKER_DEVICE) &&
+       (cal->topo_id == TRUMPET_TOPOLOGY))
+        audio_extn_ip_hdlr_copp_update_cal_info((void*)cal, data);
 
     if (my_data->acdb_set_audio_cal) {
         // persist audio cal in local cache
diff --git a/hal/msm8974/platform.h b/hal/msm8974/platform.h
index 2cb1741..ba7b01a 100644
--- a/hal/msm8974/platform.h
+++ b/hal/msm8974/platform.h
@@ -21,6 +21,9 @@
 #define QCOM_AUDIO_PLATFORM_H
 #include <sound/voice_params.h>
 
+#define TRUMPET_TOPOLOGY 0x11000099
+#define ACDB_ID_STEREO_SPEAKER_DEVICE 15
+
 enum {
     FLUENCE_NONE,
     FLUENCE_DUAL_MIC = 0x1,