From ac3b19be2324e144c9e1880ec5086af9ec5b9a70 Mon Sep 17 00:00:00 2001 From: Satya Krishna Pindiproli Date: Wed, 13 Dec 2017 16:38:26 +0530 Subject: configs: add USB_HEADSET device in policy conf files Add support for USB_HEADSET device in audio policy configuration files of all targets which support USB Tunnel Mode. CRs-Fixed: 2150144 Change-Id: I14c124e1a5407d004143c977348637fd373a4126 --- configs/apq8098_latv/audio_policy.conf | 10 +++++----- configs/apq8098_latv/audio_policy_configuration.xml | 16 +++++++++++++++- configs/msm8998/audio_policy.conf | 12 ++++++------ configs/msm8998/audio_policy_configuration.xml | 20 +++++++++++++++++--- configs/sdm660/audio_policy.conf | 12 ++++++------ configs/sdm660/audio_policy_configuration.xml | 18 ++++++++++++++++-- configs/sdm845/audio_policy.conf | 12 ++++++------ configs/sdm845/audio_policy_configuration.xml | 20 +++++++++++++++++--- 8 files changed, 88 insertions(+), 32 deletions(-) diff --git a/configs/apq8098_latv/audio_policy.conf b/configs/apq8098_latv/audio_policy.conf index 845048fe..06f6212e 100644 --- a/configs/apq8098_latv/audio_policy.conf +++ b/configs/apq8098_latv/audio_policy.conf @@ -26,21 +26,21 @@ audio_hw_modules { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY } raw { sampling_rates 48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW } deep_buffer { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER } compress_passthrough { @@ -61,7 +61,7 @@ audio_hw_modules { 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|AUDIO_FORMAT_MP2|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3 - 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING } dsd_compress_passthrough { @@ -91,7 +91,7 @@ audio_hw_modules { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW - devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE + devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE|AUDIO_DEVICE_IN_USB_HEADSET } surround_sound { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 diff --git a/configs/apq8098_latv/audio_policy_configuration.xml b/configs/apq8098_latv/audio_policy_configuration.xml index fafd3224..b74e9420 100644 --- a/configs/apq8098_latv/audio_policy_configuration.xml +++ b/configs/apq8098_latv/audio_policy_configuration.xml @@ -266,7 +266,12 @@ + + + + + + + + + @@ -324,12 +336,14 @@ sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + + sources="Wired Headset Mic,BT SCO Headset Mic,FM Tuner,USB Device In,USB Headset In,Telephony Rx"/> + + + + + + + + + @@ -332,25 +344,27 @@ sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx,mmap_no_irq_out"/> + + sources="Wired Headset Mic,BT SCO Headset Mic,FM Tuner,USB Device In,USB Headset In,Telephony Rx"/> + sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/> - + diff --git a/configs/sdm660/audio_policy.conf b/configs/sdm660/audio_policy.conf index f275e161..6f9bdbbd 100644 --- a/configs/sdm660/audio_policy.conf +++ b/configs/sdm660/audio_policy.conf @@ -26,21 +26,21 @@ audio_hw_modules { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY } raw { sampling_rates 48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW } deep_buffer { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER } compress_passthrough { @@ -54,14 +54,14 @@ audio_hw_modules { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000|352800|384000 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_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT - 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_PROXY|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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_PROXY|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DIRECT } 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 - 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING } dsd_compress_passthrough { @@ -91,7 +91,7 @@ audio_hw_modules { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW - devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE + devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE|AUDIO_DEVICE_IN_USB_HEADSET } surround_sound { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 diff --git a/configs/sdm660/audio_policy_configuration.xml b/configs/sdm660/audio_policy_configuration.xml index 418cf42e..f05d8d1b 100644 --- a/configs/sdm660/audio_policy_configuration.xml +++ b/configs/sdm660/audio_policy_configuration.xml @@ -265,7 +265,12 @@ + + + + + + + + + @@ -323,12 +335,14 @@ sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + + sources="Wired Headset Mic,BT SCO Headset Mic,FM Tuner,USB Device In,USB Headset In,Telephony Rx"/> - + diff --git a/configs/sdm845/audio_policy.conf b/configs/sdm845/audio_policy.conf index f275e161..6f9bdbbd 100644 --- a/configs/sdm845/audio_policy.conf +++ b/configs/sdm845/audio_policy.conf @@ -26,21 +26,21 @@ audio_hw_modules { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY } raw { sampling_rates 48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW } deep_buffer { sampling_rates 44100|48000 channel_masks AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_PCM_16_BIT - 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER } compress_passthrough { @@ -54,14 +54,14 @@ audio_hw_modules { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000|352800|384000 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_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT - 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_PROXY|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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_PROXY|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DIRECT } 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 - 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER + 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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING } dsd_compress_passthrough { @@ -91,7 +91,7 @@ audio_hw_modules { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW - devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE + devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE|AUDIO_DEVICE_IN_USB_HEADSET } surround_sound { sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 diff --git a/configs/sdm845/audio_policy_configuration.xml b/configs/sdm845/audio_policy_configuration.xml index a19151c3..bc13fc54 100644 --- a/configs/sdm845/audio_policy_configuration.xml +++ b/configs/sdm845/audio_policy_configuration.xml @@ -274,7 +274,12 @@ + + + + + + + + + @@ -332,25 +344,27 @@ sources="primary output,raw,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + + sources="Wired Headset Mic,BT SCO Headset Mic,FM Tuner,USB Device In,USB Headset In,Telephony Rx"/> + sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/> - + -- cgit v1.2.3 From f3464b6ca79f6078767ec3a7eecefe4f442a97f3 Mon Sep 17 00:00:00 2001 From: Haynes Mathew George Date: Mon, 11 Dec 2017 14:49:43 -0800 Subject: audio: Fix out_get_presentation_position for ULL/MMAP streams Fix the implementation of out_get_presentation_position for ULL and MMAP streams taking into account their data flow model CRs-Fixed: 2108310 Change-Id: I9123178e000ac33304d9a93e617798471f8a95cd --- hal/audio_hw.c | 55 ++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 36 insertions(+), 19 deletions(-) diff --git a/hal/audio_hw.c b/hal/audio_hw.c index 3ff1b8a8..57f0476a 100644 --- a/hal/audio_hw.c +++ b/hal/audio_hw.c @@ -2734,7 +2734,7 @@ int start_output_stream(struct stream_out *out) flags |= PCM_MMAP | PCM_NOIRQ; pcm_open_retry_count = PROXY_OPEN_RETRY_COUNT; } else if (out->realtime) { - flags |= PCM_MMAP | PCM_NOIRQ; + flags |= PCM_MMAP | PCM_NOIRQ | PCM_MONOTONIC; } else flags |= PCM_MONOTONIC; @@ -4226,27 +4226,43 @@ static int out_get_presentation_position(const struct audio_stream_out *stream, clock_gettime(CLOCK_MONOTONIC, timestamp); } else { if (out->pcm) { - unsigned int avail; - if (pcm_get_htimestamp(out->pcm, &avail, timestamp) == 0) { - size_t kernel_buffer_size = out->config.period_size * out->config.period_count; - int64_t signed_frames = out->written - kernel_buffer_size + avail; - // This adjustment accounts for buffering after app processor. - // It is based on estimated DSP latency per use case, rather than exact. - signed_frames -= - (platform_render_latency(out->usecase) * out->sample_rate / 1000000LL); + int64_t signed_frames = -1; + // XXX it might be better to identify these + // as realtime usecases? + if (out->usecase == USECASE_AUDIO_PLAYBACK_MMAP || + out->usecase == USECASE_AUDIO_PLAYBACK_ULL) { + unsigned int hw_ptr; + if (pcm_mmap_get_hw_ptr(out->pcm, &hw_ptr, timestamp) == 0) { + signed_frames = hw_ptr; + } + ALOGV("%s frames %lld", __func__, (long long)signed_frames); + } else { + unsigned int avail; + if (pcm_get_htimestamp(out->pcm, &avail, timestamp) == 0) { + size_t kernel_buffer_size = + out->config.period_size * out->config.period_count; + signed_frames = + out->written - kernel_buffer_size + avail; + } + } + + // This adjustment accounts for buffering after app processor. + // It is based on estimated DSP latency per use case, rather than exact. + signed_frames -= + (platform_render_latency(out->usecase) * + out->sample_rate / 1000000LL); - // Adjustment accounts for A2dp encoder latency with non offload usecases - // Note: Encoder latency is returned in ms, while platform_render_latency in us. - if (AUDIO_DEVICE_OUT_ALL_A2DP & out->devices) { - signed_frames -= + // Adjustment accounts for A2dp encoder latency with non offload usecases + // Note: Encoder latency is returned in ms, while platform_render_latency in us. + if (AUDIO_DEVICE_OUT_ALL_A2DP & out->devices) { + signed_frames -= (audio_extn_a2dp_get_encoder_latency() * out->sample_rate / 1000); - } + } - // It would be unusual for this value to be negative, but check just in case ... - if (signed_frames >= 0) { - *frames = signed_frames; - ret = 0; - } + // It would be unusual for this value to be negative, but check just in case ... + if (signed_frames >= 0) { + *frames = signed_frames; + ret = 0; } } else if (out->card_status == CARD_STATUS_OFFLINE) { *frames = out->written; @@ -4525,6 +4541,7 @@ static int out_get_mmap_position(const struct audio_stream_out *stream, return -EINVAL; } if (out->usecase != USECASE_AUDIO_PLAYBACK_MMAP) { + ALOGE("%s: called on %s", __func__, use_case_table[out->usecase]); return -ENOSYS; } if (out->pcm == NULL) { -- cgit v1.2.3 From c63d3518c1405901d58ff98492384862ce13a2dc Mon Sep 17 00:00:00 2001 From: Ramjee Singh Date: Fri, 17 Nov 2017 17:46:51 +0530 Subject: msm8909: Disable audio halservice for low ram Change-Id: Ifc477a35b029798e54a8b5d4a76d7553b429c519 --- configs/msm8909/msm8909.mk | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/configs/msm8909/msm8909.mk b/configs/msm8909/msm8909.mk index 0094b610..dd4b9eb4 100755 --- a/configs/msm8909/msm8909.mk +++ b/configs/msm8909/msm8909.mk @@ -139,8 +139,11 @@ persist.vendor.bt.enable.splita2dp=false PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.bt.enable.splita2dp=false +ifneq ($(strip $(TARGET_HAS_LOW_RAM)),true) +PRODUCT_PACKAGES += android.hardware.audio@2.0-service +endif + PRODUCT_PACKAGES += \ - android.hardware.audio@2.0-service \ android.hardware.audio@2.0-impl \ android.hardware.audio.effect@2.0-impl \ android.hardware.soundtrigger@2.0-impl -- cgit v1.2.3 From fcae281fe2266bc31604ba2a09b40314ea21ea14 Mon Sep 17 00:00:00 2001 From: Satya Krishna Pindiproli Date: Wed, 13 Dec 2017 16:07:14 +0530 Subject: hal: add support for USB_HEADSET in device selection Currently, only USB devices of type USB_DEVICE are supported. Add support for USB_HEADSET devices in HAL device selection based on the device sent by audio policy. CRs-Fixed: 2150144 Change-Id: I7a18ee024ef50d5e1da99d9bed20c81d424cf805 --- hal/audio_hw.c | 14 ++++++-------- hal/msm8916/platform.c | 34 +++++++++++++++++++++++----------- hal/msm8974/platform.c | 40 ++++++++++++++++++++++++++++------------ 3 files changed, 57 insertions(+), 31 deletions(-) diff --git a/hal/audio_hw.c b/hal/audio_hw.c index 3ff1b8a8..2253464e 100644 --- a/hal/audio_hw.c +++ b/hal/audio_hw.c @@ -5875,6 +5875,7 @@ static int adev_set_parameters(struct audio_hw_device *dev, const char *kvpairs) ret = str_parms_get_str(parms, AUDIO_PARAMETER_DEVICE_CONNECT, value, sizeof(value)); if (ret >= 0) { val = atoi(value); + audio_devices_t device = (audio_devices_t) val; if (val & AUDIO_DEVICE_OUT_AUX_DIGITAL) { ALOGV("cache new ext disp type and edid"); ret = platform_get_ext_disp_type(adev->platform); @@ -5884,8 +5885,7 @@ static int adev_set_parameters(struct audio_hw_device *dev, const char *kvpairs) goto done; } platform_cache_edid(adev->platform); - } else if ((val & AUDIO_DEVICE_OUT_USB_DEVICE) || - !(val ^ AUDIO_DEVICE_IN_USB_DEVICE)) { + } else if (audio_is_usb_out_device(device) || audio_is_usb_in_device(device)) { /* * Do not allow AFE proxy port usage by WFD source when USB headset is connected. * Per AudioPolicyManager, USB device is higher priority than WFD. @@ -5895,8 +5895,7 @@ static int adev_set_parameters(struct audio_hw_device *dev, const char *kvpairs) */ ret = str_parms_get_str(parms, "card", value, sizeof(value)); if (ret >= 0) { - audio_extn_usb_add_device(AUDIO_DEVICE_OUT_USB_DEVICE, atoi(value)); - audio_extn_usb_add_device(AUDIO_DEVICE_IN_USB_DEVICE, atoi(value)); + audio_extn_usb_add_device(device, atoi(value)); } ALOGV("detected USB connect .. disable proxy"); adev->allow_afe_proxy_usage = false; @@ -5906,18 +5905,17 @@ static int adev_set_parameters(struct audio_hw_device *dev, const char *kvpairs) ret = str_parms_get_str(parms, AUDIO_PARAMETER_DEVICE_DISCONNECT, value, sizeof(value)); if (ret >= 0) { val = atoi(value); + audio_devices_t device = (audio_devices_t) val; /* * The HDMI / Displayport disconnect handling has been moved to * audio extension to ensure that its parameters are not * invalidated prior to updating sysfs of the disconnect event * Invalidate will be handled by audio_extn_ext_disp_set_parameters() */ - if ((val & AUDIO_DEVICE_OUT_USB_DEVICE) || - !(val ^ AUDIO_DEVICE_IN_USB_DEVICE)) { + if (audio_is_usb_out_device(device) || audio_is_usb_in_device(device)) { ret = str_parms_get_str(parms, "card", value, sizeof(value)); if (ret >= 0) { - audio_extn_usb_remove_device(AUDIO_DEVICE_OUT_USB_DEVICE, atoi(value)); - audio_extn_usb_remove_device(AUDIO_DEVICE_IN_USB_DEVICE, atoi(value)); + audio_extn_usb_remove_device(device, atoi(value)); } ALOGV("detected USB disconnect .. enable proxy"); adev->allow_afe_proxy_usage = true; diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c index c7a079f8..6f1abba0 100644 --- a/hal/msm8916/platform.c +++ b/hal/msm8916/platform.c @@ -898,6 +898,7 @@ static int msm_device_to_be_id_internal_codec [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, {AUDIO_DEVICE_OUT_FM , 7}, @@ -923,6 +924,7 @@ static int msm_device_to_be_id_external_codec [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, {AUDIO_DEVICE_OUT_FM , 7}, @@ -3753,8 +3755,10 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o } else if (devices == (AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET | AUDIO_DEVICE_OUT_SPEAKER)) { snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET; - } else if (devices == (AUDIO_DEVICE_OUT_USB_DEVICE | - AUDIO_DEVICE_OUT_SPEAKER)) { + } else if ((devices == (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_SPEAKER)) || + (devices == (AUDIO_DEVICE_OUT_USB_HEADSET | + AUDIO_DEVICE_OUT_SPEAKER))){ snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET; } else if ((devices & AUDIO_DEVICE_OUT_SPEAKER) && (devices & AUDIO_DEVICE_OUT_ALL_A2DP)) { @@ -3810,7 +3814,9 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o } else { snd_device = SND_DEVICE_OUT_VOICE_HEADPHONES; } - } else if (devices & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (devices & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (snd_device == SND_DEVICE_NONE) { snd_device = audio_extn_usb_is_capture_supported() ? SND_DEVICE_OUT_VOICE_USB_HEADSET : @@ -3943,7 +3949,9 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o ALOGD("%s: setting USB hadset channel capability(2) for Proxy", __func__); audio_extn_set_afe_proxy_channel_mixer(adev, 2); snd_device = SND_DEVICE_OUT_USB_HEADSET; - } else if (devices & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (devices & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) snd_device = SND_DEVICE_OUT_USB_HEADSET; else @@ -4099,7 +4107,9 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } } else if (out_device & AUDIO_DEVICE_OUT_TELEPHONY_TX) { snd_device = SND_DEVICE_IN_VOICE_RX; - } else if (out_device & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (out_device & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) { snd_device = SND_DEVICE_IN_VOICE_USB_HEADSET_MIC; } @@ -4167,7 +4177,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d else snd_device = SND_DEVICE_IN_VOICE_REC_MIC; } - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC; } } else if (source == AUDIO_SOURCE_UNPROCESSED) { @@ -4187,7 +4197,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC; } } else if ((source == AUDIO_SOURCE_VOICE_COMMUNICATION) || @@ -4222,7 +4232,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_HANDSET_MIC_AEC_NS; } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_HEADSET_MIC_FLUENCE; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC_AEC; } platform_set_echo_reference(adev, true, out_device); @@ -4252,7 +4262,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_HANDSET_MIC_AEC; } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_HEADSET_MIC_FLUENCE; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC_AEC; } platform_set_echo_reference(adev, true, out_device); @@ -4352,7 +4362,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; } else if (in_device & AUDIO_DEVICE_IN_FM_TUNER) { snd_device = SND_DEVICE_IN_CAPTURE_FM; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE ) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; } else { ALOGE("%s: Unknown input device(s) %#x", __func__, in_device); @@ -4389,7 +4399,9 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } else if (out_device & AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET || out_device & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; - } else if (out_device & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (out_device & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; else diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c index 4a4275ed..0b2f21de 100644 --- a/hal/msm8974/platform.c +++ b/hal/msm8974/platform.c @@ -868,6 +868,7 @@ static int msm_device_to_be_id [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, {AUDIO_DEVICE_OUT_FM , 7}, @@ -893,6 +894,7 @@ static int msm_device_to_be_id [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, /* Add the correct be ids */ @@ -919,6 +921,7 @@ static int msm_device_to_be_id [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, /* Add the correct be ids */ @@ -945,6 +948,7 @@ static int msm_device_to_be_id [][NO_COLS] = { {AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET , 9}, {AUDIO_DEVICE_OUT_USB_ACCESSORY , -1}, {AUDIO_DEVICE_OUT_USB_DEVICE , -1}, + {AUDIO_DEVICE_OUT_USB_HEADSET , -1}, {AUDIO_DEVICE_OUT_REMOTE_SUBMIX , 9}, {AUDIO_DEVICE_OUT_PROXY , 9}, /* Add the correct be ids */ @@ -3518,8 +3522,10 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o } else if (devices == (AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET | AUDIO_DEVICE_OUT_SPEAKER)) { snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET; - } else if (devices == (AUDIO_DEVICE_OUT_USB_DEVICE | - AUDIO_DEVICE_OUT_SPEAKER)) { + } else if ((devices == (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_SPEAKER)) || + (devices == (AUDIO_DEVICE_OUT_USB_HEADSET | + AUDIO_DEVICE_OUT_SPEAKER))) { snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET; } else if ((devices & AUDIO_DEVICE_OUT_SPEAKER) && (devices & AUDIO_DEVICE_OUT_ALL_A2DP)) { @@ -3575,7 +3581,9 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o } else { snd_device = SND_DEVICE_OUT_VOICE_HEADPHONES; } - } else if (devices & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (devices & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (voice_is_in_call(adev)) { switch (adev->voice.tty_mode) { case TTY_MODE_FULL: @@ -3700,7 +3708,9 @@ snd_device_t platform_get_output_snd_device(void *platform, struct stream_out *o ALOGD("%s: setting USB hadset channel capability(2) for Proxy", __func__); audio_extn_set_afe_proxy_channel_mixer(adev, 2); snd_device = SND_DEVICE_OUT_USB_HEADSET; - } else if (devices & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (devices & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) snd_device = SND_DEVICE_OUT_USB_HEADSET; else @@ -3783,7 +3793,9 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d ALOGE("%s: Invalid TTY mode (%#x)", __func__, adev->voice.tty_mode); } goto exit; - } else if (out_device & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (out_device & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { switch (adev->voice.tty_mode) { case TTY_MODE_FULL: snd_device = SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC; @@ -3865,7 +3877,9 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } } else if (out_device & AUDIO_DEVICE_OUT_TELEPHONY_TX) { snd_device = SND_DEVICE_IN_VOICE_RX; - } else if (out_device & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (out_device & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) { snd_device = SND_DEVICE_IN_VOICE_USB_HEADSET_MIC; } @@ -3933,7 +3947,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d else snd_device = SND_DEVICE_IN_VOICE_REC_MIC; } - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC; } } else if (source == AUDIO_SOURCE_UNPROCESSED) { @@ -3953,7 +3967,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC; } } else if ((source == AUDIO_SOURCE_VOICE_COMMUNICATION) || @@ -3988,7 +4002,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_HANDSET_MIC_AEC_NS; } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_HEADSET_MIC_FLUENCE; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC_AEC; } platform_set_echo_reference(adev, true, out_device); @@ -4018,7 +4032,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_HANDSET_MIC_AEC; } else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) { snd_device = SND_DEVICE_IN_HEADSET_MIC_FLUENCE; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC_AEC; } platform_set_echo_reference(adev, true, out_device); @@ -4118,7 +4132,7 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; } else if (in_device & AUDIO_DEVICE_IN_FM_TUNER) { snd_device = SND_DEVICE_IN_CAPTURE_FM; - } else if (in_device & AUDIO_DEVICE_IN_USB_DEVICE ) { + } else if (audio_is_usb_in_device(in_device | AUDIO_DEVICE_BIT_IN)) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; } else { ALOGE("%s: Unknown input device(s) %#x", __func__, in_device); @@ -4163,7 +4177,9 @@ snd_device_t platform_get_input_snd_device(void *platform, audio_devices_t out_d } else if (out_device & AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET || out_device & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET) { snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; - } else if (out_device & AUDIO_DEVICE_OUT_USB_DEVICE) { + } else if (out_device & + (AUDIO_DEVICE_OUT_USB_DEVICE | + AUDIO_DEVICE_OUT_USB_HEADSET)) { if (audio_extn_usb_is_capture_supported()) snd_device = SND_DEVICE_IN_USB_HEADSET_MIC; else -- cgit v1.2.3 From bea2a99b37a52ba446a15fc013e2f9aadfc46a23 Mon Sep 17 00:00:00 2001 From: Asish Bhattacharya Date: Thu, 21 Dec 2017 19:41:31 +0530 Subject: mm-audio: add support for techpack. Change-Id: Ic81f66b3a2f474efba9ad7d54bb79801ee1c4e61 --- hal/Android.mk | 3 +++ mm-audio/aenc-aac/qdsp6/Android.mk | 3 +++ mm-audio/aenc-amrnb/qdsp6/Android.mk | 3 +++ mm-audio/aenc-evrc/qdsp6/Android.mk | 3 +++ mm-audio/aenc-g711/qdsp6/Android.mk | 3 +++ mm-audio/aenc-qcelp13/qdsp6/Android.mk | 3 +++ post_proc/Android.mk | 8 ++++++++ 7 files changed, 26 insertions(+) diff --git a/hal/Android.mk b/hal/Android.mk index 8aa539cf..a9d334be 100644 --- a/hal/Android.mk +++ b/hal/Android.mk @@ -60,7 +60,10 @@ LOCAL_SRC_FILES := \ LOCAL_SRC_FILES += audio_extn/audio_extn.c \ audio_extn/utils.c LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) LOCAL_CFLAGS += -DUSE_VENDOR_EXTN ifeq ($(strip $(AUDIO_FEATURE_ENABLED_HDMI_EDID)),true) diff --git a/mm-audio/aenc-aac/qdsp6/Android.mk b/mm-audio/aenc-aac/qdsp6/Android.mk index b48c8893..78799f32 100644 --- a/mm-audio/aenc-aac/qdsp6/Android.mk +++ b/mm-audio/aenc-aac/qdsp6/Android.mk @@ -37,7 +37,10 @@ LOCAL_SRC_FILES := src/aenc_svr.c LOCAL_SRC_FILES += src/omx_aac_aenc.cpp LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) include $(BUILD_SHARED_LIBRARY) diff --git a/mm-audio/aenc-amrnb/qdsp6/Android.mk b/mm-audio/aenc-amrnb/qdsp6/Android.mk index 0ea36724..10e6d956 100644 --- a/mm-audio/aenc-amrnb/qdsp6/Android.mk +++ b/mm-audio/aenc-amrnb/qdsp6/Android.mk @@ -37,7 +37,10 @@ LOCAL_SRC_FILES := src/aenc_svr.c LOCAL_SRC_FILES += src/omx_amr_aenc.cpp LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) include $(BUILD_SHARED_LIBRARY) diff --git a/mm-audio/aenc-evrc/qdsp6/Android.mk b/mm-audio/aenc-evrc/qdsp6/Android.mk index f495c569..163c8b19 100644 --- a/mm-audio/aenc-evrc/qdsp6/Android.mk +++ b/mm-audio/aenc-evrc/qdsp6/Android.mk @@ -37,7 +37,10 @@ LOCAL_SRC_FILES := src/aenc_svr.c LOCAL_SRC_FILES += src/omx_evrc_aenc.cpp LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) include $(BUILD_SHARED_LIBRARY) diff --git a/mm-audio/aenc-g711/qdsp6/Android.mk b/mm-audio/aenc-g711/qdsp6/Android.mk index fc76dd38..a29d5b83 100644 --- a/mm-audio/aenc-g711/qdsp6/Android.mk +++ b/mm-audio/aenc-g711/qdsp6/Android.mk @@ -38,7 +38,10 @@ LOCAL_SRC_FILES += src/omx_g711_aenc.cpp LOCAL_SRC_FILES += src/omx_log.cpp LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) include $(BUILD_SHARED_LIBRARY) diff --git a/mm-audio/aenc-qcelp13/qdsp6/Android.mk b/mm-audio/aenc-qcelp13/qdsp6/Android.mk index 2f4d4be9..5c37a5cd 100644 --- a/mm-audio/aenc-qcelp13/qdsp6/Android.mk +++ b/mm-audio/aenc-qcelp13/qdsp6/Android.mk @@ -37,7 +37,10 @@ LOCAL_SRC_FILES := src/aenc_svr.c LOCAL_SRC_FILES += src/omx_qcelp13_aenc.cpp LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) include $(BUILD_SHARED_LIBRARY) diff --git a/post_proc/Android.mk b/post_proc/Android.mk index ad6e4ac1..e9869de2 100644 --- a/post_proc/Android.mk +++ b/post_proc/Android.mk @@ -51,6 +51,10 @@ LOCAL_C_INCLUDES := \ $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include \ $(call include-path-for, audio-effects) +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) + include $(BUILD_SHARED_LIBRARY) @@ -112,6 +116,10 @@ LOCAL_C_INCLUDES := \ hardware/qcom/audio/hal/audio_extn \ external/tinycompress/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(BOARD_VENDOR_KERNEL_MODULES) + include $(BUILD_SHARED_LIBRARY) endif -- cgit v1.2.3