hal: enable support for AEC on Voice Recognition path

- enable AEC for VR path for multi mic

Bug: 27906575

Change-Id: I21bf7247bed93b200169f2cb60d3ddff8631fd6e
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index d907e82..6766142 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -2158,20 +2158,24 @@
     lock_input_stream(in);
     pthread_mutex_lock(&in->dev->lock);
     if ((in->source == AUDIO_SOURCE_VOICE_COMMUNICATION ||
+            in->source == AUDIO_SOURCE_VOICE_RECOGNITION ||
             adev->mode == AUDIO_MODE_IN_COMMUNICATION) &&
             in->enable_aec != enable &&
             (memcmp(&desc.type, FX_IID_AEC, sizeof(effect_uuid_t)) == 0)) {
         in->enable_aec = enable;
         if (!enable)
             platform_set_echo_reference(in->dev, enable, AUDIO_DEVICE_NONE);
-        adev->enable_voicerx = enable;
-        struct audio_usecase *usecase;
-        struct listnode *node;
-        list_for_each(node, &adev->usecase_list) {
-            usecase = node_to_item(node, struct audio_usecase, list);
-            if (usecase->type == PCM_PLAYBACK) {
-                select_devices(adev, usecase->id);
-            break;
+        if (in->source == AUDIO_SOURCE_VOICE_COMMUNICATION ||
+            adev->mode == AUDIO_MODE_IN_COMMUNICATION) {
+            adev->enable_voicerx = enable;
+            struct audio_usecase *usecase;
+            struct listnode *node;
+            list_for_each(node, &adev->usecase_list) {
+                usecase = node_to_item(node, struct audio_usecase, list);
+                if (usecase->type == PCM_PLAYBACK) {
+                    select_devices(adev, usecase->id);
+                    break;
+                }
             }
         }
         if (!in->standby)