Merge "config: msmsteppe: enable Audio HIDL HAL 5.0" into audio-hal.lnx.6.0
diff --git a/configs/atoll/audio_policy_configuration.xml b/configs/atoll/audio_policy_configuration.xml
index 5a251c2..e96660a 100644
--- a/configs/atoll/audio_policy_configuration.xml
+++ b/configs/atoll/audio_policy_configuration.xml
@@ -319,27 +319,8 @@
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
</devicePorts>
diff --git a/configs/atoll/mixer_paths_idp.xml b/configs/atoll/mixer_paths_idp.xml
index 860a253..433e1a8 100644
--- a/configs/atoll/mixer_paths_idp.xml
+++ b/configs/atoll/mixer_paths_idp.xml
@@ -2130,6 +2130,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/atoll/mixer_paths_qrd.xml b/configs/atoll/mixer_paths_qrd.xml
index 5efd1aa..8719bf1 100644
--- a/configs/atoll/mixer_paths_qrd.xml
+++ b/configs/atoll/mixer_paths_qrd.xml
@@ -2151,6 +2151,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/atoll/mixer_paths_wcd9375.xml b/configs/atoll/mixer_paths_wcd9375.xml
index 680f445..c4d2af7 100644
--- a/configs/atoll/mixer_paths_wcd9375.xml
+++ b/configs/atoll/mixer_paths_wcd9375.xml
@@ -2155,6 +2155,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/atoll/mixer_paths_wcd9375qrd.xml b/configs/atoll/mixer_paths_wcd9375qrd.xml
index 758a1d3..aee360c 100644
--- a/configs/atoll/mixer_paths_wcd9375qrd.xml
+++ b/configs/atoll/mixer_paths_wcd9375qrd.xml
@@ -2237,6 +2237,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/kona/audio_policy_configuration.xml b/configs/kona/audio_policy_configuration.xml
index 1594f3d..8bb3328 100644
--- a/configs/kona/audio_policy_configuration.xml
+++ b/configs/kona/audio_policy_configuration.xml
@@ -311,27 +311,8 @@
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
</devicePorts>
diff --git a/configs/kona/kona.mk b/configs/kona/kona.mk
index 288f775..a8991fc 100644
--- a/configs/kona/kona.mk
+++ b/configs/kona/kona.mk
@@ -32,6 +32,7 @@
AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true
AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true
AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true
+AUDIO_FEATURE_ENABLED_MPEGH_SW_DECODER := true
AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
AUDIO_FEATURE_ENABLED_SSR := true
AUDIO_FEATURE_ENABLED_DTS_EAGLE := false
diff --git a/configs/kona/mixer_paths_qrd.xml b/configs/kona/mixer_paths_qrd.xml
index b8671d6..08176d5 100644
--- a/configs/kona/mixer_paths_qrd.xml
+++ b/configs/kona/mixer_paths_qrd.xml
@@ -2523,6 +2523,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/lito/audio_policy_configuration.xml b/configs/lito/audio_policy_configuration.xml
index 50920b3..e8990fb 100644
--- a/configs/lito/audio_policy_configuration.xml
+++ b/configs/lito/audio_policy_configuration.xml
@@ -316,27 +316,8 @@
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
</devicePorts>
diff --git a/configs/lito/lito.mk b/configs/lito/lito.mk
index 45258f0..27c23bc 100644
--- a/configs/lito/lito.mk
+++ b/configs/lito/lito.mk
@@ -393,7 +393,7 @@
vendor.audio.feature.display_port.enable=true \
vendor.audio.feature.dsm_feedback.enable=false \
vendor.audio.feature.dynamic_ecns.enable=true \
-vendor.audio.feature.ext_hw_plugin.enable=true \
+vendor.audio.feature.ext_hw_plugin.enable=false \
vendor.audio.feature.external_dsp.enable=false \
vendor.audio.feature.external_speaker.enable=false \
vendor.audio.feature.external_speaker_tfa.enable=false \
diff --git a/configs/lito/mixer_paths.xml b/configs/lito/mixer_paths.xml
index 8688745..ec6be2e 100644
--- a/configs/lito/mixer_paths.xml
+++ b/configs/lito/mixer_paths.xml
@@ -2027,8 +2027,6 @@
<ctl name="RX INT1_1 MIX1 INP0" value="RX1" />
<ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
<ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" />
- <ctl name="RX_HPH_PWR_MODE" value="LOHIFI" />
- <ctl name="RX HPH Mode" value="CLS_H_LOHIFI" />
<ctl name="RX_COMP1 Switch" value="1" />
<ctl name="RX_COMP2 Switch" value="1" />
<ctl name="HPHL_COMP Switch" value="1" />
diff --git a/configs/lito/mixer_paths_qrd.xml b/configs/lito/mixer_paths_qrd.xml
index 188d5ee..0d8585b 100644
--- a/configs/lito/mixer_paths_qrd.xml
+++ b/configs/lito/mixer_paths_qrd.xml
@@ -2342,8 +2342,6 @@
<ctl name="RX INT1_1 MIX1 INP0" value="RX1" />
<ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
<ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" />
- <ctl name="RX_HPH_PWR_MODE" value="LOHIFI" />
- <ctl name="RX HPH Mode" value="CLS_H_LOHIFI" />
<ctl name="RX_COMP1 Switch" value="1" />
<ctl name="RX_COMP2 Switch" value="1" />
<ctl name="HPHL_COMP Switch" value="1" />
@@ -2381,6 +2379,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/msmsteppe/audio_policy_configuration.xml b/configs/msmsteppe/audio_policy_configuration.xml
index 71cac8b..b092687 100644
--- a/configs/msmsteppe/audio_policy_configuration.xml
+++ b/configs/msmsteppe/audio_policy_configuration.xml
@@ -311,27 +311,8 @@
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
</devicePorts>
diff --git a/configs/msmsteppe/mixer_paths_idp.xml b/configs/msmsteppe/mixer_paths_idp.xml
index 85de3eb..2ce8d12 100644
--- a/configs/msmsteppe/mixer_paths_idp.xml
+++ b/configs/msmsteppe/mixer_paths_idp.xml
@@ -2150,6 +2150,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/msmsteppe/mixer_paths_qrd.xml b/configs/msmsteppe/mixer_paths_qrd.xml
index 19afb26..db33f96 100644
--- a/configs/msmsteppe/mixer_paths_qrd.xml
+++ b/configs/msmsteppe/mixer_paths_qrd.xml
@@ -2175,6 +2175,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/msmsteppe/mixer_paths_wcd9375.xml b/configs/msmsteppe/mixer_paths_wcd9375.xml
index 680f445..c4d2af7 100644
--- a/configs/msmsteppe/mixer_paths_wcd9375.xml
+++ b/configs/msmsteppe/mixer_paths_wcd9375.xml
@@ -2155,6 +2155,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/msmsteppe/mixer_paths_wcd9375qrd.xml b/configs/msmsteppe/mixer_paths_wcd9375qrd.xml
index 758a1d3..aee360c 100644
--- a/configs/msmsteppe/mixer_paths_wcd9375qrd.xml
+++ b/configs/msmsteppe/mixer_paths_wcd9375qrd.xml
@@ -2237,6 +2237,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/sdm710/sdm710.mk b/configs/sdm710/sdm710.mk
index c47a146..177562a 100644
--- a/configs/sdm710/sdm710.mk
+++ b/configs/sdm710/sdm710.mk
@@ -418,6 +418,15 @@
android.hardware.audio.effect@4.0 \
android.hardware.audio.effect@4.0-impl
+# enable audio hidl hal 5.0
+PRODUCT_PACKAGES += \
+ android.hardware.audio@5.0 \
+ android.hardware.audio.common@5.0 \
+ android.hardware.audio.common@5.0-util \
+ android.hardware.audio@5.0-impl \
+ android.hardware.audio.effect@5.0 \
+ android.hardware.audio.effect@5.0-impl
+
PRODUCT_PACKAGES_ENG += \
VoicePrintTest \
VoicePrintDemo
diff --git a/configs/sdm845/sdm845.mk b/configs/sdm845/sdm845.mk
index 0ede765..80ff74b 100644
--- a/configs/sdm845/sdm845.mk
+++ b/configs/sdm845/sdm845.mk
@@ -367,6 +367,15 @@
android.hardware.audio.effect@4.0 \
android.hardware.audio.effect@4.0-impl
+# enable audio hidl hal 5.0
+PRODUCT_PACKAGES += \
+ android.hardware.audio@5.0 \
+ android.hardware.audio.common@5.0 \
+ android.hardware.audio.common@5.0-util \
+ android.hardware.audio@5.0-impl \
+ android.hardware.audio.effect@5.0 \
+ android.hardware.audio.effect@5.0-impl
+
PRODUCT_PACKAGES_ENG += \
VoicePrintTest \
VoicePrintDemo
diff --git a/configs/trinket/audio_policy_configuration.xml b/configs/trinket/audio_policy_configuration.xml
index 0939e3b..5d74497 100644
--- a/configs/trinket/audio_policy_configuration.xml
+++ b/configs/trinket/audio_policy_configuration.xml
@@ -316,27 +316,8 @@
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
- <!-- edit as needed -->
- <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
- samplingRates="44100,48000,64000,88200,96000,128000,176400,192000"
- channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_INDEX_MASK_6,AUDIO_CHANNEL_IN_7POINT1,AUDIO_CHANNEL_INDEX_MASK_8"/>
</devicePort>
</devicePorts>
diff --git a/configs/trinket/mixer_paths_idp.xml b/configs/trinket/mixer_paths_idp.xml
index b341a3c..5e769db 100644
--- a/configs/trinket/mixer_paths_idp.xml
+++ b/configs/trinket/mixer_paths_idp.xml
@@ -2185,6 +2185,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/configs/trinket/mixer_paths_qrd.xml b/configs/trinket/mixer_paths_qrd.xml
index 7039dbb..9fbc525 100644
--- a/configs/trinket/mixer_paths_qrd.xml
+++ b/configs/trinket/mixer_paths_qrd.xml
@@ -2180,6 +2180,10 @@
<path name="handset" />
</path>
+ <path name="voice-handset-tmus">
+ <path name="handset" />
+ </path>
+
<path name="voice-speaker">
<path name="speaker-mono" />
</path>
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index a8f3ad8..739a0bf 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -4109,8 +4109,6 @@
return out->compr_config.fragment_size;
} else if(out->usecase == USECASE_COMPRESS_VOIP_CALL)
return voice_extn_compress_voip_out_get_buffer_size(out);
- else if(out->usecase == USECASE_AUDIO_PLAYBACK_VOIP)
- return VOIP_IO_BUF_SIZE(out->config.rate, DEFAULT_VOIP_BUF_DURATION_MS, DEFAULT_VOIP_BIT_DEPTH_BYTE);
else if (is_offload_usecase(out->usecase) &&
out->flags == AUDIO_OUTPUT_FLAG_DIRECT)
return out->hal_fragment_size;
@@ -6169,8 +6167,6 @@
if(in->usecase == USECASE_COMPRESS_VOIP_CALL)
return voice_extn_compress_voip_in_get_buffer_size(in);
- else if(in->usecase == USECASE_AUDIO_RECORD_VOIP)
- return VOIP_IO_BUF_SIZE(in->config.rate, DEFAULT_VOIP_BUF_DURATION_MS, DEFAULT_VOIP_BIT_DEPTH_BYTE);
else if(audio_extn_compr_cap_usecase_supported(in->usecase))
return audio_extn_compr_cap_get_buffer_size(in->config.format);
else if(audio_extn_cin_attached_usecase(in->usecase))
@@ -7282,8 +7278,17 @@
out->volume_r = INVALID_OUT_VOLUME;
out->config = default_pcm_config_voip_copp;
- out->config.period_size = VOIP_IO_BUF_SIZE(out->sample_rate, DEFAULT_VOIP_BUF_DURATION_MS, DEFAULT_VOIP_BIT_DEPTH_BYTE)/2;
out->config.rate = out->sample_rate;
+ uint32_t channel_count =
+ audio_channel_count_from_out_mask(out->channel_mask);
+ uint32_t buffer_size = get_stream_buffer_size(DEFAULT_VOIP_BUF_DURATION_MS,
+ out->sample_rate, out->format,
+ channel_count, false);
+ uint32_t frame_size = audio_bytes_per_sample(out->format) * channel_count;
+ if (frame_size != 0)
+ out->config.period_size = buffer_size / frame_size;
+ else
+ ALOGW("%s: frame size is 0 for format %#x", __func__, out->format);
}
} else {
if ((out->dev->mode == AUDIO_MODE_IN_COMMUNICATION ||
@@ -9210,9 +9215,9 @@
static int adev_close(hw_device_t *device)
{
size_t i;
- struct audio_device *adev = (struct audio_device *)device;
+ struct audio_device *adev_temp = (struct audio_device *)device;
- if (!adev)
+ if (!adev_temp)
return 0;
pthread_mutex_lock(&adev_init_lock);
diff --git a/qahw_api/test/qahw_playback_test.c b/qahw_api/test/qahw_playback_test.c
index 9f1489c..c239010 100644
--- a/qahw_api/test/qahw_playback_test.c
+++ b/qahw_api/test/qahw_playback_test.c
@@ -2111,6 +2111,7 @@
{"intr-strm", required_argument, 0, 'i'},
{"device-config", required_argument, 0, 'C'},
{"play-list", required_argument, 0, 'g'},
+ {"ec-ref", no_argument, 0, 'L'},
{"help", no_argument, 0, 'h'},
{"bt-wbs", no_argument, 0, 'z'},
{0, 0, 0, 0}
@@ -2135,7 +2136,7 @@
while ((opt = getopt_long(argc,
argv,
- "-f:r:c:b:d:s:v:V:l:t:a:w:k:PD:KF:Ee:A:u:m:S:C:p::x:y:qQzh:i:h:g:O:",
+ "-f:r:c:b:d:s:v:V:l:t:a:w:k:PD:KF:Ee:A:u:m:S:C:p::x:y:qQzLh:i:h:g:O:",
long_options,
&option_index)) != -1) {
@@ -2335,6 +2336,9 @@
case 'x':
render_format = atoi(optarg);
break;
+ case 'L':
+ ec_ref = true;
+ break;
case 'y':
stream_param[i].timestamp_filename = optarg;
break;
diff --git a/qahw_api/test/qahw_playback_test.h b/qahw_api/test/qahw_playback_test.h
index 6f33338..4c78813 100644
--- a/qahw_api/test/qahw_playback_test.h
+++ b/qahw_api/test/qahw_playback_test.h
@@ -41,6 +41,7 @@
bool enable_dump;
float vol_level;
uint8_t render_format;
+bool ec_ref;
enum {
diff --git a/qahw_api/test/qap_wrapper_extn.c b/qahw_api/test/qap_wrapper_extn.c
index de954bf..b3da21a 100644
--- a/qahw_api/test/qap_wrapper_extn.c
+++ b/qahw_api/test/qap_wrapper_extn.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2016-2017,2019 The Linux Foundation. All rights reserved.
* Not a Contribution.
*
* Copyright (C) 2015 The Android Open Source Project *
@@ -88,6 +88,7 @@
FILE *fp_output_writer_hp = NULL;
FILE *fp_output_writer_hdmi = NULL;
FILE *fp_output_timestamp_file = NULL;
+FILE *fp_ecref = NULL;
unsigned char data_buf[MAX_BUFFER_SIZE];
uint32_t output_device_id = 0;
uint16_t input_streams_count = 0;
@@ -207,6 +208,7 @@
bool enable_hdmi = false;
bool combo_enabled = false;
char dev_kv_pair[16] = {0};
+ bool enable_ecref = false;
ALOGV("%s:%d output device id %d render format = %d", __func__, __LINE__, output_device_id, hdmi_render_format);
@@ -217,6 +219,8 @@
enable_hp = true;
if (output_device_id & AUDIO_DEVICE_OUT_SPEAKER)
enable_spk = true;
+ if (ec_ref)
+ enable_ecref = true;
if (enable_hdmi) {
session_output_config.output_config[session_output_config.num_output].id = AUDIO_DEVICE_OUT_HDMI;
@@ -270,6 +274,20 @@
session_output_config.num_output++;
}
+ if (enable_ecref) {
+ session_output_config.output_config[session_output_config.num_output].channels = popcount(AUDIO_CHANNEL_OUT_STEREO);
+ session_output_config.output_config[session_output_config.num_output].id = AUDIO_DEVICE_OUT_PROXY;
+ session_output_config.output_config[session_output_config.num_output].sample_rate = smpl_rate;
+ if (bitwidth == PCM_24_BITWIDTH) {
+ session_output_config.output_config[session_output_config.num_output].format = QAP_AUDIO_FORMAT_PCM_24_BIT_PACKED;
+ session_output_config.output_config[session_output_config.num_output].bit_width = PCM_24_BITWIDTH;
+ } else {
+ session_output_config.output_config[session_output_config.num_output].format = QAP_AUDIO_FORMAT_PCM_16_BIT;
+ session_output_config.output_config[session_output_config.num_output].bit_width = PCM_16_BITWIDTH;
+ }
+ session_output_config.num_output++;
+ }
+
ALOGV("%s:%d num_output = %d", __func__, __LINE__, session_output_config.num_output);
return;
}
@@ -1235,6 +1253,20 @@
ALOGD("%s::%d Measuring Kpi cold stop %lf", __func__, __LINE__, cold_stop);
}
}
+ if (buffer->buffer_parms.output_buf_params.output_id == AUDIO_DEVICE_OUT_PROXY) {
+
+ if (fp_ecref == NULL) {
+ fp_ecref = fopen("/data/vendor/misc/audio/ecref", "w+");
+ }
+
+ if (fp_ecref) {
+ ALOGD("%s: write %d bytes to ecref dump",__func__,buffer->common_params.size);
+ fwrite((unsigned char *)buffer->common_params.data, 1, buffer->common_params.size, fp_ecref);
+ } else {
+ ALOGE("%s: failed to open ecref dump file",__func__);
+ }
+
+ }
}
}
break;