ASoC: msm: ensure ADM is only opened/closed for multimedia purpose
It was found that upon initation of voice call, ADM COPP is opened
even though there is no audio playback or capture. This behavior
forces QDSP6 to scale up clock frequency because it is expected that
, with ADM COPP opened, post/pre processing will be exercised hence
require more MIPs in QDSP6 to process the request. Unecessary power
consumption is wasted as result. Update pcm routing driver not to
start ADM COPP unnecessarily.
CRs-fixed: 316604
Change-Id: I90b33ae1582fb76c74d9e4ec13962db34374c60d
Signed-off-by: Patrick Lai <plai@codeaurora.org>
diff --git a/sound/soc/msm/msm-pcm-routing.h b/sound/soc/msm/msm-pcm-routing.h
index b7fc82a..b3a8210 100644
--- a/sound/soc/msm/msm-pcm-routing.h
+++ b/sound/soc/msm/msm-pcm-routing.h
@@ -27,6 +27,12 @@
#define LPASS_BE_AUXPCM_RX "(Backend) AUX_PCM_RX"
#define LPASS_BE_AUXPCM_TX "(Backend) AUX_PCM_TX"
+/* For multimedia front-ends, asm session is allocated dynamically.
+ * Hence, asm session/multimedia front-end mapping has to be maintained.
+ * Due to this reason, additional multimedia front-end must be placed before
+ * non-multimedia front-ends.
+ */
+
enum {
MSM_FRONTEND_DAI_MULTIMEDIA1 = 0,
MSM_FRONTEND_DAI_MULTIMEDIA2,
@@ -39,6 +45,9 @@
MSM_FRONTEND_DAI_MAX,
};
+#define MSM_FRONTEND_DAI_MM_SIZE (MSM_FRONTEND_DAI_MULTIMEDIA4 + 1)
+#define MSM_FRONTEND_DAI_MM_MAX_ID MSM_FRONTEND_DAI_MULTIMEDIA4
+
enum {
MSM_BACKEND_DAI_PRI_I2S_RX = 0,
MSM_BACKEND_DAI_PRI_I2S_TX,