Merge tag 'LA.UM.9.6.2.c26-02500-89xx.0' into int/11/fp3
"LA.UM.9.6.2.c26-02500-89xx.0"
* tag 'LA.UM.9.6.2.c26-02500-89xx.0':
hal: Fix CFI errors
Change-Id: Ie0a1b57a8b2e4d247680962d5a760e13d5c4f310
diff --git a/adsprpcd/Android.bp b/adsprpcd/Android.bp
index 7e6a8e7..f91ad2f 100644
--- a/adsprpcd/Android.bp
+++ b/adsprpcd/Android.bp
@@ -3,8 +3,6 @@
srcs: ["adsprpcd.c"],
- header_libs: ["libfastrpcshippable_headers"],
-
shared_libs: [
"liblog",
"libdl",
diff --git a/configs/msm8953/audio_output_policy.conf b/configs/msm8953/audio_output_policy.conf
index b19fbb0..4b769c4 100644
--- a/configs/msm8953/audio_output_policy.conf
+++ b/configs/msm8953/audio_output_policy.conf
@@ -48,14 +48,14 @@
}
compress_offload_16 {
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
- formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
+ formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
sampling_rates 44100|48000|96000|192000
bit_width 16
app_type 69936
}
compress_offload_24 {
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
- formats AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_VORBIS
+ formats AUDIO_FORMAT_FLAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_VORBIS
sampling_rates 44100|48000|96000|192000
bit_width 24
app_type 69940
diff --git a/configs/msm8953/audio_platform_info_tashalite.xml b/configs/msm8953/audio_platform_info_tashalite.xml
index ee65dac..f24edca 100644
--- a/configs/msm8953/audio_platform_info_tashalite.xml
+++ b/configs/msm8953/audio_platform_info_tashalite.xml
@@ -77,8 +77,10 @@
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE" acdb_id="8"/>
</acdb_ids>
<backend_names>
- <device name="SND_DEVICE_OUT_BT_SCO_WB" interface="INT_BT_SCO_RX"/>
- <device name="SND_DEVICE_OUT_BT_SCO" interface="INT_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="voice-handset" interface="SLIMBUS_0_RX"/>
+ <device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="SLIMBUS_0_RX"/>
+ <device name="SND_DEVICE_OUT_BT_SCO_WB" interface="INTERNAL_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_BT_SCO" interface="INTERNAL_BT_SCO_RX"/>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="SLIMBUS_6_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="SLIMBUS_6_RX"/>
<device name="SND_DEVICE_OUT_ANC_HEADSET" backend="headphones" interface="SLIMBUS_6_RX"/>
@@ -90,10 +92,10 @@
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="SLIMBUS_6_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headphones" interface="SLIMBUS_6_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="SLIMBUS_6_RX"/>
- <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SLIMBUS_0_RX--and-INT_BT_SCO_RX"/>
- <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SLIMBUS_0_RX--and-INT_BT_SCO_RX"/>
- <device name="SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO" backend="wsa-speaker-and-bt-sco" interface="SLIMBUS_0_RX--and-INT_BT_SCO_RX"/>
- <device name="SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_WB" backend="wsa-speaker-and-bt-sco-wb" interface="SLIMBUS_0_RX--and-INT_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SLIMBUS_0_RX--and-INTERNAL_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SLIMBUS_0_RX--and-INTERNAL_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO" backend="wsa-speaker-and-bt-sco" interface="SLIMBUS_0_RX--and-INTERNAL_BT_SCO_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_WB" backend="wsa-speaker-and-bt-sco-wb" interface="SLIMBUS_0_RX--and-INTERNAL_BT_SCO_RX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" interface="INT_BT_SCO_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" interface="INT_BT_SCO_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" interface="INT_BT_SCO_TX"/>
diff --git a/configs/msm8953/audio_policy.conf b/configs/msm8953/audio_policy.conf
index 663a275..cf25174 100644
--- a/configs/msm8953/audio_policy.conf
+++ b/configs/msm8953/audio_policy.conf
@@ -57,7 +57,7 @@
compress_offload {
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
- formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
+ formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
}
diff --git a/configs/msm8953/mixer_paths_tashalite.xml b/configs/msm8953/mixer_paths_tashalite.xml
old mode 100644
new mode 100755
index 923bff1..df0eb5f
--- a/configs/msm8953/mixer_paths_tashalite.xml
+++ b/configs/msm8953/mixer_paths_tashalite.xml
@@ -101,15 +101,8 @@
<ctl name="SLIMBUS_4_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="MultiMedia5 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia5 Mixer AFE_PCM_TX" value="0" />
- <ctl name="MultiMedia4 Mixer MI2S_TX" value="0" />
<ctl name="MultiMedia1 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia7 Mixer MI2S_TX" value="0" />
<ctl name="MultiMedia10 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia11 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia12 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia13 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia14 Mixer MI2S_TX" value="0" />
- <ctl name="MultiMedia15 Mixer MI2S_TX" value="0" />
<ctl name="MultiMedia16 Mixer MI2S_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_4_TX" value="0" />
@@ -321,11 +314,11 @@
<ctl name="AIF1_CAP Mixer SLIM TX1" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX0" value="0"/>
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="0" />
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_0_RX Port Mixer INTERNAL_BT_SCO_TX" value="0" />
<ctl name="SLIMBUS_6_RX Port Mixer INTERNAL_BT_SCO_TX" value="0" />
<!-- echo reference -->
<ctl name="AUDIO_REF_EC_UL1 MUX" value="None" />
+ <ctl name="EC Reference Channels" value="ZERO" />
<!-- usb headset -->
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="0" />
@@ -405,6 +398,7 @@
<!-- Multimode Voice1 -->
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="SLIM_6_RX_Voice Mixer VoiceMMode1" value="0" />
+ <ctl name="QUIN_MI2S_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="0" />
<!-- Multimode Voice1 HDMI -->
<ctl name="HDMI_RX_Voice Mixer VoiceMMode1" value="0" />
@@ -422,6 +416,7 @@
<!-- Multimode Voice2 -->
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="SLIM_6_RX_Voice Mixer VoiceMMode2" value="0" />
+ <ctl name="QUIN_MI2S_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="0" />
<!-- Multimode Voice2 HDMI -->
<ctl name="HDMI_RX_Voice Mixer VoiceMMode2" value="0" />
@@ -559,8 +554,20 @@
<ctl name="MultiMedia10 Mixer AFE_PCM_TX" value="0" />
<!-- VoIP over audio -->
+ <!-- aw8898_speaker amp -->
+ <ctl name="aw8898_speaker_switch" value="Off" />
+ <!-- aw8898_speaker amp end-->
+
<!-- These are audio route (FE to BE) specific mixer settings -->
<path name="deep-buffer-playback">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia1" value="1" />
+ </path>
+
+ <path name="deep-buffer-playback handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia1" value="1" />
+ </path>
+
+ <path name="deep-buffer-playback voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia1" value="1" />
</path>
@@ -592,19 +599,22 @@
</path>
<path name="echo-reference">
- <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_RX" />
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="QUIN_MI2S_RX" />
+ <ctl name="EC Reference Channels" value="One" />
</path>
<path name="echo-reference headphones">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_6_RX" />
+ <ctl name="EC Reference Channels" value="Two" />
</path>
<path name="echo-reference headphones-44.1">
- <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_1_TX" />
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_5_RX" />
+ <ctl name="EC Reference Channels" value="Two" />
</path>
<path name="deep-buffer-playback hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia1" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia1" value="0" />
</path>
<path name="deep-buffer-playback speaker-and-hdmi">
@@ -667,6 +677,14 @@
</path>
<path name="low-latency-playback">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia5" value="1" />
+ </path>
+
+ <path name="low-latency-playback handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="1" />
+ </path>
+
+ <path name="low-latency-playback voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="1" />
</path>
@@ -675,7 +693,7 @@
</path>
<path name="low-latency-playback hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia5" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia5" value="0" />
</path>
<path name="low-latency-playback bt-sco">
@@ -742,7 +760,7 @@
</path>
<path name="multi-channel-playback hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia2" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia2" value="0" />
</path>
<path name="multi-channel-playback afe-proxy">
@@ -750,6 +768,14 @@
</path>
<path name="audio-ull-playback">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia3" value="1" />
+ </path>
+
+ <path name="audio-ull-playback handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia3" value="1" />
+ </path>
+
+ <path name="audio-ull-playback voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia3" value="1" />
</path>
@@ -798,7 +824,7 @@
</path>
<path name="audio-ull-playback hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia3" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia3" value="0" />
</path>
<path name="audio-ull-playback speaker-and-hdmi">
@@ -816,6 +842,14 @@
</path>
<path name="compress-offload-playback">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia4" value="1" />
+ </path>
+
+ <path name="compress-offload-playback handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="1" />
+ </path>
+
+ <path name="compress-offload-playback voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="1" />
</path>
@@ -824,7 +858,7 @@
</path>
<path name="compress-offload-playback hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia4" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia4" value="0" />
</path>
<path name="compress-offload-playback bt-sco">
@@ -887,11 +921,19 @@
</path>
<path name="compress-offload-playback2">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia7" value="1" />
+ </path>
+
+ <path name="compress-offload-playback2 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia7" value="1" />
+ </path>
+
+ <path name="compress-offload-playback2 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia7" value="1" />
</path>
<path name="compress-offload-playback2 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia7" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia7" value="0" />
</path>
<path name="compress-offload-playback2 bt-sco">
@@ -958,11 +1000,19 @@
</path>
<path name="compress-offload-playback3">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia10" value="1" />
+ </path>
+
+ <path name="compress-offload-playback3 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia10" value="1" />
+ </path>
+
+ <path name="compress-offload-playback3 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia10" value="1" />
</path>
<path name="compress-offload-playback3 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia10" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia10" value="0" />
</path>
<path name="compress-offload-playback3 bt-sco">
@@ -1025,11 +1075,19 @@
</path>
<path name="compress-offload-playback4">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia11" value="1" />
+ </path>
+
+ <path name="compress-offload-playback4 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia11" value="1" />
+ </path>
+
+ <path name="compress-offload-playback4 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia11" value="1" />
</path>
<path name="compress-offload-playback4 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia11" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia11" value="0" />
</path>
<path name="compress-offload-playback4 bt-sco">
@@ -1092,11 +1150,19 @@
</path>
<path name="compress-offload-playback5">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia12" value="1" />
+ </path>
+
+ <path name="compress-offload-playback5 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia12" value="1" />
+ </path>
+
+ <path name="compress-offload-playback5 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia12" value="1" />
</path>
<path name="compress-offload-playback5 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia12" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia12" value="0" />
</path>
<path name="compress-offload-playback5 bt-sco">
@@ -1159,11 +1225,19 @@
</path>
<path name="compress-offload-playback6">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia13" value="1" />
+ </path>
+
+ <path name="compress-offload-playback6 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia13" value="1" />
+ </path>
+
+ <path name="compress-offload-playback6 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia13" value="1" />
</path>
<path name="compress-offload-playback6 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia13" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia13" value="0" />
</path>
<path name="compress-offload-playback6 bt-sco">
@@ -1226,11 +1300,19 @@
</path>
<path name="compress-offload-playback7">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia14" value="1" />
+ </path>
+
+ <path name="compress-offload-playback7 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia14" value="1" />
+ </path>
+
+ <path name="compress-offload-playback7 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia14" value="1" />
</path>
<path name="compress-offload-playback7 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia14" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia14" value="0" />
</path>
<path name="compress-offload-playback7 bt-sco">
@@ -1293,11 +1375,19 @@
</path>
<path name="compress-offload-playback8">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia15" value="1" />
+ </path>
+
+ <path name="compress-offload-playback8 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia15" value="1" />
+ </path>
+
+ <path name="compress-offload-playback8 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia15" value="1" />
</path>
<path name="compress-offload-playback8 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia15" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia15" value="0" />
</path>
<path name="compress-offload-playback8 bt-sco">
@@ -1360,11 +1450,19 @@
</path>
<path name="compress-offload-playback9">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia16" value="1" />
+ </path>
+
+ <path name="compress-offload-playback9 handset">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia16" value="1" />
+ </path>
+
+ <path name="compress-offload-playback9 voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia16" value="1" />
</path>
<path name="compress-offload-playback9 hdmi">
- <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia16" value="1" />
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia16" value="0" />
</path>
<path name="compress-offload-playback9 bt-sco">
@@ -1484,13 +1582,23 @@
</path>
<path name="voice-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer CSVoice" value="1" />
+ <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" />
+ </path>
+
+ <path name="voice-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer CSVoice" value="1" />
+ <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" />
+ </path>
+
+ <path name="voice-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer CSVoice" value="1" />
<ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" />
</path>
<path name="voice-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer CSVoice" value="1" />
- <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer CSVoice" value="0" />
+ <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="0" />
</path>
<path name="voice-call bt-sco">
@@ -1519,6 +1627,16 @@
</path>
<path name="voice2-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer Voice2" value="1" />
+ <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" />
+ </path>
+
+ <path name="voice2-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer Voice2" value="1" />
+ <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" />
+ </path>
+
+ <path name="voice2-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer Voice2" value="1" />
<ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" />
</path>
@@ -1529,8 +1647,8 @@
</path>
<path name="voice2-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer Voice2" value="1" />
- <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer Voice2" value="0" />
+ <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="0" />
</path>
<path name="voice2-call bt-sco">
@@ -1565,7 +1683,7 @@
<path name="play-fm">
<ctl name="Internal FM RX Volume" value="1" />
- <ctl name="SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX" value="1" />
+ <ctl name="QUIN_MI2S_RX Port Mixer INTERNAL_FM_TX" value="1" />
<ctl name="SLIMBUS_DL_HL Switch" value="1" />
</path>
@@ -1738,6 +1856,16 @@
<path name="volte-call">
+ <ctl name="QUAT_MI2S_RX_Voice Mixer VoLTE" value="1" />
+ <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" />
+ </path>
+
+ <path name="volte-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer VoLTE" value="1" />
+ <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" />
+ </path>
+
+ <path name="volte-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer VoLTE" value="1" />
<ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" />
</path>
@@ -1748,8 +1876,8 @@
</path>
<path name="volte-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer VoLTE" value="1" />
- <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer VoLTE" value="0" />
+ <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="0" />
</path>
<path name="volte-call bt-sco">
@@ -1778,6 +1906,16 @@
</path>
<path name="compress-voip-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer Voip" value="1" />
+ <ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="1" />
+ </path>
+
+ <path name="compress-voip-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer Voip" value="1" />
+ <ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="1" />
+ </path>
+
+ <path name="compress-voip-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer Voip" value="1" />
<ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="1" />
</path>
@@ -1820,6 +1958,16 @@
</path>
<path name="qchat-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer QCHAT" value="1" />
+ <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="1" />
+ </path>
+
+ <path name="qchat-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer QCHAT" value="1" />
+ <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="1" />
+ </path>
+
+ <path name="qchat-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer QCHAT" value="1" />
<ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="1" />
</path>
@@ -1840,8 +1988,8 @@
</path>
<path name="qchat-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer QCHAT" value="1" />
- <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer QCHAT" value="0" />
+ <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="0" />
</path>
<path name="qchat-call afe-proxy">
@@ -1860,6 +2008,16 @@
</path>
<path name="vowlan-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer VoWLAN" value="1" />
+ <ctl name="VoWLAN_Tx Mixer SLIM_0_TX_VoWLAN" value="1" />
+ </path>
+
+ <path name="vowlan-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer VoWLAN" value="1" />
+ <ctl name="VoWLAN_Tx Mixer SLIM_0_TX_VoWLAN" value="1" />
+ </path>
+
+ <path name="vowlan-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer VoWLAN" value="1" />
<ctl name="VoWLAN_Tx Mixer SLIM_0_TX_VoWLAN" value="1" />
</path>
@@ -1870,8 +2028,8 @@
</path>
<path name="vowlan-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer VoWLAN" value="1" />
- <ctl name="VoWLAN_Tx Mixer SLIM_0_TX_VoWLAN" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer VoWLAN" value="0" />
+ <ctl name="VoWLAN_Tx Mixer SLIM_0_TX_VoWLAN" value="0" />
</path>
<path name="vowlan-call bt-sco">
@@ -1900,6 +2058,16 @@
</path>
<path name="voicemmode1-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer VoiceMMode1" value="1" />
+ <ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="1" />
+ </path>
+
+ <path name="voicemmode1-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer VoiceMMode1" value="1" />
+ <ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="1" />
+ </path>
+
+ <path name="voicemmode1-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode1" value="1" />
<ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="1" />
</path>
@@ -1910,8 +2078,8 @@
</path>
<path name="voicemmode1-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer VoiceMMode1" value="1" />
- <ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer VoiceMMode1" value="0" />
+ <ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="0" />
</path>
<path name="voicemmode1-call bt-sco">
@@ -1945,6 +2113,16 @@
</path>
<path name="voicemmode2-call">
+ <ctl name="QUIN_MI2S_RX_Voice Mixer VoiceMMode2" value="1" />
+ <ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="1" />
+ </path>
+
+ <path name="voicemmode2-call handset">
+ <ctl name="SLIM_0_RX_Voice Mixer VoiceMMode2" value="1" />
+ <ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="1" />
+ </path>
+
+ <path name="voicemmode2-call voice-handset">
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="1" />
</path>
@@ -1955,8 +2133,8 @@
</path>
<path name="voicemmode2-call hdmi">
- <ctl name="HDMI_RX_Voice Mixer VoiceMMode2" value="1" />
- <ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="1" />
+ <ctl name="HDMI_RX_Voice Mixer VoiceMMode2" value="0" />
+ <ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="0" />
</path>
<path name="voicemmode2-call bt-sco">
@@ -2019,6 +2197,10 @@
<!-- VoIP Rx settings -->
<path name="audio-playback-voip">
+ <ctl name="QUIN_MI2S_RX Audio Mixer MultiMedia10" value="1" />
+ </path>
+
+ <path name="audio-playback-voip voice-handset">
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia10" value="1" />
</path>
@@ -2031,10 +2213,15 @@
</path>
<path name="audio-playback-voip bt-sco-wb">
- <ctl name="BT SampleRate" value="KHZ_16" />
+ <ctl name="Internal BTSCO SampleRate" value="BTSCO_RATE_16KHZ" />
+ <ctl name="SLIM_1 SampleRate" value="16000" />
<path name="audio-playback-voip bt-sco" />
</path>
+ <path name="audio-playback-voip bt-a2dp">
+ <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia10" value="1" />
+ </path>
+
<path name="audio-playback-voip afe-proxy">
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia10" value="1" />
</path>
@@ -2052,14 +2239,26 @@
<path name="audio-playback-voip" />
</path>
- <!-- VoIP Tx settings -->
- <path name="audio-record-voip">
- <ctl name="MultiMedia10 Mixer SLIM_0_TX" value="1" />
+ <path name="echo-reference-voip">
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="QUIN_MI2S_RX" />
+ <ctl name="EC Reference Channels" value="One"/>
</path>
- <path name="audio-record-voip bt-sco">
- <ctl name="MultiMedia10 Mixer INTERNAL_BT_SCO_TX" value="1" />
+ <path name="echo-reference-voip headphones">
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_6_RX" />
+ <ctl name="EC Reference Channels" value="Two"/>
</path>
+
+ <path name="echo-reference-voip handset">
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_6_RX" />
+ <ctl name="EC Reference Channels" value="Two"/>
+ </path>
+
+ <path name="echo-reference-voip headphones-44.1">
+ <ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_5_RX" />
+ <ctl name="EC Reference Channels" value="Two"/>
+ </path>
+
<!-- VoIP Tx settings -->
<path name="audio-record-voip">
<ctl name="MultiMedia10 Mixer SLIM_0_TX" value="1" />
@@ -2179,30 +2378,20 @@
<ctl name="IIR0 INP0 MUX" value="DEC7" />
</path>
+ <path name="speaker">
+ <ctl name="aw8898_speaker_switch" value="On" />
+ </path>
+
+ <path name="speaker-cts">
+ <ctl name="aw8898_speaker_switch" value="On" />
+ </path>
+
<path name="wsa-speaker">
- <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
- <ctl name="SLIM RX1 MUX" value="AIF_MIX1_PB" />
- <ctl name="SLIM_0_RX Channels" value="Two" />
- <ctl name="RX INT7_1 MIX1 INP0" value="RX0" />
- <ctl name="RX INT8_1 MIX1 INP0" value="RX1" />
- <ctl name="SpkrLeft COMP Switch" value="1" />
- <ctl name="SpkrRight COMP Switch" value="1" />
- <ctl name="SpkrLeft BOOST Switch" value="1" />
- <ctl name="SpkrRight BOOST Switch" value="1" />
- <ctl name="SpkrLeft VISENSE Switch" value="1" />
- <ctl name="SpkrRight VISENSE Switch" value="1" />
- <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" />
- <ctl name="SpkrRight SWR DAC_Port Switch" value="1" />
+ <path name="speaker" />
</path>
<path name="wsa-speaker-mono">
- <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
- <ctl name="SLIM_0_RX Channels" value="One" />
- <ctl name="RX INT7_1 MIX1 INP0" value="RX0" />
- <ctl name="SpkrLeft COMP Switch" value="1" />
- <ctl name="SpkrLeft BOOST Switch" value="1" />
- <ctl name="SpkrLeft VISENSE Switch" value="1" />
- <ctl name="SpkrLeft SWR DAC_Port Switch" value="1" />
+ <path name="speaker" />
</path>
@@ -2212,7 +2401,7 @@
</path>
<path name="vbat-speaker">
- <path name="wsa-speaker" />
+ <path name="speaker" />
<ctl name="RX INT7 VBAT SPKRL VBAT Enable" value="1" />
<ctl name="RX INT8 VBAT SPKRR VBAT Enable" value="1" />
</path>
@@ -2238,6 +2427,14 @@
<ctl name="RX INT0 MIX2 INP" value="SRC0" />
</path>
+ <path name="primary-mic">
+ <path name="dmic2" />
+ </path>
+
+ <path name="secondary-mic">
+ <path name="dmic3" />
+ </path>
+
<path name="speaker-mic">
<path name="dmic3" />
</path>
@@ -2252,7 +2449,7 @@
<ctl name="AIF4_VI Mixer SPKR_VI_1" value="1" />
<ctl name="AIF4_VI Mixer SPKR_VI_2" value="1" />
<ctl name="SLIM_4_TX Format" value="PACKED_16B" />
- <path name="wsa-speaker" />
+ <path name="speaker" />
<ctl name="VI_FEED_TX Channels" value="Two" />
<ctl name="SLIM0_RX_VI_FB_LCH_MUX" value="SLIM4_TX" />
<ctl name="SLIM0_RX_VI_FB_RCH_MUX" value="SLIM4_TX" />
@@ -2289,7 +2486,7 @@
</path>
<path name="handset-mic">
- <path name="dmic1" />
+ <path name="dmic2" />
</path>
<path name="three-mic">
@@ -2379,7 +2576,7 @@
</path>
<path name="voice-speaker">
- <path name="wsa-speaker-mono" />
+ <path name="speaker" />
</path>
<path name="voice-speaker-mic">
@@ -2397,7 +2594,7 @@
<path name="speaker-and-headphones">
<path name="headphones" />
- <path name="wsa-speaker" />
+ <path name="speaker" />
</path>
@@ -2414,12 +2611,12 @@
</path>
<path name="speaker-and-usb-headphones">
- <path name="wsa-speaker" />
+ <path name="speaker" />
<path name="usb-headphones" />
</path>
<path name="speaker-and-hdmi">
- <path name="wsa-speaker" />
+ <path name="speaker" />
<path name="hdmi" />
</path>
@@ -2459,10 +2656,10 @@
<ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
<ctl name="SLIM TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="DMIC" />
- <ctl name="DMIC MUX7" value="DMIC0" />
+ <ctl name="DMIC MUX7" value="DMIC1" />
<ctl name="SLIM TX8 MUX" value="DEC8" />
<ctl name="ADC MUX8" value="DMIC" />
- <ctl name="DMIC MUX8" value="DMIC3" />
+ <ctl name="DMIC MUX8" value="DMIC2" />
<ctl name="SLIM_0_TX Channels" value="Two" />
</path>
@@ -2501,7 +2698,13 @@
</path>
<path name="voice-speaker-dmic-ef">
- <path name="speaker-dmic-endfire" />
+ <!-- path name="dmic3" / -->
+ <ctl name="AIF1_CAP Mixer SLIM TX7" value="1"/>
+ <ctl name="SLIM_0_TX Channels" value="One" />
+ <ctl name="SLIM TX7 MUX" value="DEC7" />
+ <ctl name="ADC MUX7" value="DMIC" />
+ <ctl name="DMIC MUX7" value="DMIC2" />
+ <ctl name="IIR0 INP0 MUX" value="DEC7" />
</path>
<path name="voice-rec-dmic-ef">
diff --git a/hal/Android.mk b/hal/Android.mk
index 1bd1342..7c3592e 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -362,8 +362,7 @@
LOCAL_CFLAGS += -D_GNU_SOURCE
LOCAL_CFLAGS += -Wall -Werror
-LOCAL_COPY_HEADERS_TO := mm-audio
-LOCAL_COPY_HEADERS := audio_extn/audio_defs.h
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
ifeq ($(strip $(AUDIO_FEATURE_ENABLED_GCOV)),true)
LOCAL_CFLAGS += --coverage -fprofile-arcs -ftest-coverage
diff --git a/hal/audio_extn/audio_extn.c b/hal/audio_extn/audio_extn.c
old mode 100644
new mode 100755
index 629e2e3..e0d25d6
--- a/hal/audio_extn/audio_extn.c
+++ b/hal/audio_extn/audio_extn.c
@@ -199,6 +199,9 @@
static bool audio_extn_audiozoom_enabled = false;
static bool audio_extn_hifi_filter_enabled = false;
+static int ForceUseSpecificMic = 0;
+static bool UseSpecificMic_Enabled = false;
+
#define AUDIO_PARAMETER_KEY_AANC_NOISE_LEVEL "aanc_noise_level"
#define AUDIO_PARAMETER_KEY_ANC "anc_enabled"
#define AUDIO_PARAMETER_KEY_WFD "wfd_channel_cap"
@@ -3027,6 +3030,50 @@
return ret_val;
}
+int audio_extn_get_force_use_specific_mic()
+{
+ ALOGD("%s:[Mic-test] ForceUseSpecificMic(%d)", __func__, ForceUseSpecificMic);
+ return ForceUseSpecificMic;
+}
+bool audio_extn_get_force_use_specific_mic_status()
+{
+ ALOGD("%s:[Mic-test] seSpecificMic_Enabled(%d)", __func__, UseSpecificMic_Enabled);
+ return UseSpecificMic_Enabled;
+}
+void audio_extn_disable_force_use_specific_mic()
+{
+ ForceUseSpecificMic = 0;
+ UseSpecificMic_Enabled = false;
+ ALOGD("%s:[Mic-test] diable force_use_specific_mic", __func__);
+}
+void audio_extn_mic_test_parameters(struct audio_device *adev,
+ struct str_parms *parms)
+{
+ char value[32]={0};
+ int ret;
+ struct listnode *node;
+ struct audio_usecase *usecase;
+ ret = str_parms_get_str(parms, "ForceUseSpecificMic", value,
+ sizeof(value));
+ if (ret >= 0) {
+ if (strcmp(value, "1") == 0)
+ ForceUseSpecificMic = 1;
+ else if(strcmp(value, "2") == 0)
+ ForceUseSpecificMic = 2;
+ else
+ UseSpecificMic_Enabled = false;
+ if(ForceUseSpecificMic != 0){
+ UseSpecificMic_Enabled =true;
+ list_for_each(node, &adev->usecase_list) {
+ usecase = node_to_item(node, struct audio_usecase, list);
+ select_devices(adev, usecase->id);
+ ALOGD("%s:[Mic-test] switching device, usecase->type(%d) ForceUseSpecificMic(%d) Enabled(%d)",
+ __func__,usecase->type ,ForceUseSpecificMic,UseSpecificMic_Enabled);
+ break;
+ }
+ }
+ }
+}
void audio_extn_init(struct audio_device *adev)
{
@@ -6368,6 +6415,7 @@
audio_extn_source_track_set_parameters(adev, parms);
audio_extn_fbsp_set_parameters(parms);
audio_extn_keep_alive_set_parameters(adev, parms);
+ audio_extn_mic_test_parameters(adev,parms);
audio_extn_passthru_set_parameters(adev, parms);
audio_extn_ext_disp_set_parameters(adev, parms);
audio_extn_qaf_set_parameters(adev, parms);
diff --git a/hal/audio_extn/audio_extn.h b/hal/audio_extn/audio_extn.h
old mode 100644
new mode 100755
index da986ad..521ce25
--- a/hal/audio_extn/audio_extn.h
+++ b/hal/audio_extn/audio_extn.h
@@ -469,6 +469,9 @@
};
typedef enum st_event_type st_event_type_t;
+bool audio_extn_get_force_use_specific_mic_status(void);
+int audio_extn_get_force_use_specific_mic(void);
+void audio_extn_disable_force_use_specific_mic(void);
int audio_extn_sound_trigger_init(struct audio_device *adev);
void audio_extn_sound_trigger_deinit(struct audio_device *adev);
void audio_extn_sound_trigger_update_device_status(snd_device_t snd_device,
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
old mode 100644
new mode 100755
index 8fc2961..89c37d7
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -2782,6 +2782,12 @@
if (usecase->stream.out == voip_out && voip_in != NULL)
select_devices(adev, voip_in->usecase);
}
+ if(audio_extn_get_force_use_specific_mic_status()){
+ platform_get_input_snd_device(adev->platform,
+ NULL,
+ &usecase->stream.out->device_list,
+ usecase->type);
+ }
} else if (usecase->type == PCM_CAPTURE) {
if (usecase->stream.in == NULL) {
ALOGE("%s: stream.in is NULL", __func__);
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
old mode 100644
new mode 100755
index 3ecbe6e..8bf3cf7
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -767,6 +767,8 @@
[SND_DEVICE_IN_INCALL_REC_TX] = "incall-rec-tx",
[SND_DEVICE_IN_INCALL_REC_RX_TX] = "incall-rec-rx-tx",
[SND_DEVICE_IN_LINE] = "line-in",
+ [SND_DEVICE_IN_MAIN_MIC] = "primary-mic",
+ [SND_DEVICE_IN_SUB_MIC] = "secondary-mic",
[SND_DEVICE_IN_HANDSET_6MIC] = "handset-6mic",
[SND_DEVICE_IN_HANDSET_8MIC] = "handset-8mic",
[SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE] = "camcorder-mic",
@@ -1002,7 +1004,7 @@
[SND_DEVICE_IN_VOICE_DMIC] = 41,
[SND_DEVICE_IN_VOICE_DMIC_SB] = 167,
[SND_DEVICE_IN_VOICE_DMIC_TMUS] = 89,
- [SND_DEVICE_IN_VOICE_SPEAKER_DMIC] = 43,
+ [SND_DEVICE_IN_VOICE_SPEAKER_DMIC] = 42,
[SND_DEVICE_IN_VOICE_SPEAKER_DMIC_SB] = 175,
[SND_DEVICE_IN_VOICE_SPEAKER_TMIC] = 161,
[SND_DEVICE_IN_VOICE_SPEAKER_QMIC] = 19,
@@ -1013,7 +1015,7 @@
[SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC] = 16,
[SND_DEVICE_IN_VOICE_RX] = 44,
- [SND_DEVICE_IN_VOICE_REC_MIC] = 4,
+ [SND_DEVICE_IN_VOICE_REC_MIC] = 104,
[SND_DEVICE_IN_VOICE_REC_MIC_NS] = 107,
[SND_DEVICE_IN_VOICE_REC_MIC_AEC] = 112,
[SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS] = 114,
@@ -1066,6 +1068,8 @@
[SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC] = 147,
[SND_DEVICE_IN_HANDSET_GENERIC_QMIC] = 150,
[SND_DEVICE_IN_LINE] = 4,
+ [SND_DEVICE_IN_MAIN_MIC] = 4,
+ [SND_DEVICE_IN_SUB_MIC] = 11,
[SND_DEVICE_IN_HANDSET_6MIC] = 4,
[SND_DEVICE_IN_HANDSET_8MIC] = 4,
[SND_DEVICE_OUT_VOIP_HANDSET] = 133,
@@ -2353,6 +2357,8 @@
backend_tag_table[SND_DEVICE_IN_VOICE_SPEAKER_MIC_HFP_MMSECNS] = strdup("bt-sco-mmsecns");
backend_tag_table[SND_DEVICE_OUT_CALL_PROXY] = strdup("call-proxy");
backend_tag_table[SND_DEVICE_IN_CALL_PROXY] = strdup("call-proxy-in");
+ backend_tag_table[SND_DEVICE_OUT_HANDSET] = strdup("handset");
+ backend_tag_table[SND_DEVICE_OUT_VOICE_HANDSET] = strdup("voice-handset");
hw_interface_table[SND_DEVICE_OUT_HANDSET] = strdup("SLIMBUS_0_RX");
hw_interface_table[SND_DEVICE_OUT_SPEAKER] = strdup("SLIMBUS_0_RX");
@@ -7273,7 +7279,7 @@
if ((my_data->fluence_type & FLUENCE_DUAL_MIC) &&
(my_data->source_mic_type & SOURCE_DUAL_MIC) &&
(channel_count == 2))
- snd_device = SND_DEVICE_IN_HANDSET_DMIC_STEREO;
+ snd_device = SND_DEVICE_IN_CAMCORDER_MIC;
else
snd_device = SND_DEVICE_IN_CAMCORDER_MIC;
}
@@ -7397,7 +7403,13 @@
} else if (source == AUDIO_SOURCE_MIC) {
if (compare_device_type(&in_devices, AUDIO_DEVICE_IN_BUILTIN_MIC) &&
channel_count == 1 ) {
- if(my_data->fluence_in_audio_rec) {
+ if (audio_extn_get_force_use_specific_mic_status()) {
+ if(audio_extn_get_force_use_specific_mic() == 1)
+ snd_device = SND_DEVICE_IN_MAIN_MIC;
+ else if(audio_extn_get_force_use_specific_mic() == 2)
+ snd_device = SND_DEVICE_IN_SUB_MIC;
+ audio_extn_disable_force_use_specific_mic();
+ } else if(my_data->fluence_in_audio_rec) {
if ((my_data->fluence_type & FLUENCE_QUAD_MIC) &&
(my_data->source_mic_type & SOURCE_QUAD_MIC)) {
snd_device = SND_DEVICE_IN_HANDSET_QMIC;
@@ -7455,7 +7467,7 @@
snd_device = SND_DEVICE_IN_THREE_MIC;
else if ((my_data->fluence_type & (FLUENCE_DUAL_MIC | FLUENCE_TRI_MIC | FLUENCE_QUAD_MIC)) &&
(channel_count == 2) && (my_data->source_mic_type & SOURCE_DUAL_MIC))
- snd_device = SND_DEVICE_IN_HANDSET_DMIC_STEREO;
+ snd_device = SND_DEVICE_IN_HANDSET_MIC;
else
snd_device = my_data->fluence_sb_enabled ? SND_DEVICE_IN_HANDSET_MIC_SB
: (my_data->fluence_nn_enabled? SND_DEVICE_IN_HANDSET_MIC_NN
diff --git a/hal/msm8974/platform.h b/hal/msm8974/platform.h
old mode 100644
new mode 100755
index a475ed7..a6c3ed1
--- a/hal/msm8974/platform.h
+++ b/hal/msm8974/platform.h
@@ -314,6 +314,8 @@
SND_DEVICE_IN_UNPROCESSED_THREE_MIC,
SND_DEVICE_IN_UNPROCESSED_QUAD_MIC,
SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC,
+ SND_DEVICE_IN_MAIN_MIC,
+ SND_DEVICE_IN_SUB_MIC,
SND_DEVICE_IN_HANDSET_6MIC,
SND_DEVICE_IN_HANDSET_8MIC,
SND_DEVICE_IN_EC_REF_LOOPBACK_MONO,
diff --git a/qahw/Android.mk b/qahw/Android.mk
index decd4c6..a4ff57e 100644
--- a/qahw/Android.mk
+++ b/qahw/Android.mk
@@ -5,11 +5,9 @@
include $(CLEAR_VARS)
-libqahw-inc := $(LOCAL_PATH)/inc
-
LOCAL_MODULE := libqahwwrapper
LOCAL_MODULE_TAGS := optional
-LOCAL_C_INCLUDES := $(libqahw-inc)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/inc
LOCAL_HEADER_LIBRARIES := libutils_headers \
libsystem_headers \
@@ -27,10 +25,6 @@
LOCAL_CFLAGS += -Wall -Werror
-LOCAL_COPY_HEADERS_TO := mm-audio/qahw/inc
-LOCAL_COPY_HEADERS := inc/qahw.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_api.h
-
LOCAL_PROPRIETARY_MODULE := true
LOCAL_VENDOR_MODULE := true
@@ -39,5 +33,11 @@
endif
include $(BUILD_SHARED_LIBRARY)
+include $(CLEAR_VARS)
+LOCAL_MODULE := libqahw_headers
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/inc
+LOCAL_PROPRIETARY_MODULE := true
+include $(BUILD_HEADER_LIBRARY)
+
endif
endif
diff --git a/qahw_api/Android.mk b/qahw_api/Android.mk
index 30c326f..5d1789c 100644
--- a/qahw_api/Android.mk
+++ b/qahw_api/Android.mk
@@ -4,12 +4,9 @@
include $(CLEAR_VARS)
-libqahwapi-inc := $(LOCAL_PATH)/inc
-
LOCAL_MODULE := libqahw
LOCAL_MODULE_TAGS := optional
-LOCAL_C_INCLUDES := $(libqahwapi-inc)
-LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/qahw/inc
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/inc
LOCAL_SRC_FILES := \
src/qahw_api.cpp
@@ -20,6 +17,9 @@
LOCAL_STATIC_LIBRARIES += libprofile_rt
endif
+LOCAL_HEADER_LIBRARIES := \
+ libqahw_headers
+
LOCAL_SHARED_LIBRARIES := \
liblog \
libcutils \
@@ -30,17 +30,6 @@
LOCAL_CFLAGS += -Wall -Werror
-LOCAL_COPY_HEADERS_TO := mm-audio/qahw_api/inc
-LOCAL_COPY_HEADERS := inc/qahw_defs.h
-LOCAL_COPY_HEADERS += inc/qahw_api.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_audiosphere.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_bassboost.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_environmentalreverb.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_equalizer.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_presetreverb.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_virtualizer.h
-LOCAL_COPY_HEADERS += inc/qahw_effect_visualizer.h
-
LOCAL_VENDOR_MODULE := true
ifneq ($(filter kona lahaina holi,$(TARGET_BOARD_PLATFORM)),)
@@ -48,6 +37,14 @@
endif
include $(BUILD_SHARED_LIBRARY)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libqahwapi_headers
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/inc
+LOCAL_PROPRIETARY_MODULE := true
+
+include $(BUILD_HEADER_LIBRARY)
+
#test app compilation
include $(LOCAL_PATH)/test/Android.mk
diff --git a/qahw_api/test/Android.mk b/qahw_api/test/Android.mk
index 110a765..bc7690d 100644
--- a/qahw_api/test/Android.mk
+++ b/qahw_api/test/Android.mk
@@ -7,12 +7,14 @@
qahw_effect_test.c
LOCAL_MODULE := hal_play_test
-hal-play-inc = $(TARGET_OUT_HEADERS)/mm-audio/qahw_api/inc
-hal-play-inc += $(TARGET_OUT_HEADERS)/mm-audio/qahw/inc
hal-play-inc += external/tinyalsa/include
LOCAL_CFLAGS += -Wall -Werror -Wno-sign-compare
+LOCAL_HEADER_LIBRARIES := \
+ libqahw_headers \
+ libqahwapi_headers
+
LOCAL_SHARED_LIBRARIES := \
libaudioutils\
libqahw \
@@ -42,6 +44,10 @@
LOCAL_SRC_FILES := qahw_multi_record_test.c
LOCAL_MODULE := hal_rec_test
LOCAL_CFLAGS += -Wall -Werror -Wno-sign-compare
+
+LOCAL_HEADER_LIBRARIES := \
+ libqahwapi_headers
+
LOCAL_SHARED_LIBRARIES := \
libaudioutils \
libqahw \
@@ -49,9 +55,6 @@
LOCAL_32_BIT_ONLY := true
-hal-rec-inc = $(TARGET_OUT_HEADERS)/mm-audio/qahw_api/inc
-
-LOCAL_C_INCLUDES += $(hal-rec-inc)
LOCAL_VENDOR_MODULE := true
ifneq ($(filter kona lahaina holi,$(TARGET_BOARD_PLATFORM)),)