ASoC: qdsp6: Sets the proper sampling rate for Fluence topology
The sampling rate of Fluence topology is either 16K or 8K. Therefore,
we need to reduce the ADM sampling rate to 16K during recording with
Fluence topology
Signed-off-by: Jay Wang <jaywang@codeaurora.org>
diff --git a/sound/soc/msm/qdsp6/q6adm.c b/sound/soc/msm/qdsp6/q6adm.c
index 4170a6a..fbe5f86 100644
--- a/sound/soc/msm/qdsp6/q6adm.c
+++ b/sound/soc/msm/qdsp6/q6adm.c
@@ -347,8 +347,14 @@
/* convert path to acdb path */
if (path == PLAYBACK)
open.topology_id = get_adm_rx_topology();
- else
+ else {
open.topology_id = get_adm_tx_topology();
+ if ((open.topology_id ==
+ VPM_TX_SM_ECNS_COPP_TOPOLOGY) ||
+ (open.topology_id ==
+ VPM_TX_DM_FLUENCE_COPP_TOPOLOGY))
+ rate = 16000;
+ }
if (open.topology_id == 0)
open.topology_id = topology;
@@ -446,8 +452,14 @@
/* convert path to acdb path */
if (path == PLAYBACK)
open.topology_id = get_adm_rx_topology();
- else
+ else {
open.topology_id = get_adm_tx_topology();
+ if ((open.topology_id ==
+ VPM_TX_SM_ECNS_COPP_TOPOLOGY) ||
+ (open.topology_id ==
+ VPM_TX_DM_FLUENCE_COPP_TOPOLOGY))
+ rate = 16000;
+ }
if (open.topology_id == 0)
open.topology_id = topology;