Loading hal/audio_extn/a2dp.c +9 −0 Original line number Diff line number Diff line Loading @@ -287,6 +287,7 @@ typedef enum { // --- external function dependency --- fp_platform_get_pcm_device_id_t fp_platform_get_pcm_device_id; fp_check_a2dp_restore_t fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post_t fp_platform_switch_voice_call_device_post; /* PCM config for ABR Feedback hostless front end */ static struct pcm_config pcm_config_abr = { Loading Loading @@ -3387,6 +3388,8 @@ void a2dp_init(void *adev, fp_platform_get_pcm_device_id = init_config.fp_platform_get_pcm_device_id; fp_check_a2dp_restore_l = init_config.fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post = init_config.fp_platform_switch_voice_call_device_post; reset_a2dp_enc_config_params(); reset_a2dp_source_dec_config_params(); Loading Loading @@ -3567,6 +3570,12 @@ int sco_start_configuration() ALOGD("sco_start_configuration start"); if (!a2dp.swb_configured) { /*Before starting sco config, we must ensure to set correct acdb id because sco cofiguration will trigger port open which needs acdb_id*/ fp_platform_switch_voice_call_device_post(a2dp.adev->platform, SND_DEVICE_OUT_BT_SCO_SWB, SND_DEVICE_IN_BT_SCO_MIC_SWB); a2dp.bt_encoder_format = CODEC_TYPE_APTX_AD_SPEECH; /* Configure AFE codec*/ if (configure_aptx_ad_speech_enc_fmt() && Loading hal/audio_extn/audio_extn.c +1 −0 Original line number Diff line number Diff line Loading @@ -4751,6 +4751,7 @@ void audio_extn_a2dp_init(void *adev) a2dp_offload_init_config_t a2dp_init_config; a2dp_init_config.fp_platform_get_pcm_device_id = platform_get_pcm_device_id; a2dp_init_config.fp_check_a2dp_restore_l = check_a2dp_restore_l; a2dp_init_config.fp_platform_switch_voice_call_device_post = platform_switch_voice_call_device_post; a2dp_init(adev, a2dp_init_config); } Loading hal/audio_extn/audio_extn.h +4 −0 Original line number Diff line number Diff line Loading @@ -161,6 +161,9 @@ typedef int (*fp_platform_get_default_app_type_v2_t)(void *, usecase_type_t); typedef int (*fp_platform_send_audio_calibration_t)(void *, struct audio_usecase *, int); typedef int (*fp_platform_get_pcm_device_id_t)(audio_usecase_t, int); typedef int (*fp_platform_switch_voice_call_device_post_t)(void *platform, snd_device_t out_snd_device, snd_device_t in_snd_device); typedef const char *(*fp_platform_get_snd_device_name_t)(snd_device_t); typedef int (*fp_platform_spkr_prot_is_wsa_analog_mode_t)(void *); typedef int (*fp_platform_get_snd_device_t)(snd_device_t); Loading Loading @@ -338,6 +341,7 @@ typedef int (*fp_check_a2dp_restore_t)(struct audio_device *, struct a2dp_offload_init_config { fp_platform_get_pcm_device_id_t fp_platform_get_pcm_device_id; fp_check_a2dp_restore_t fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post_t fp_platform_switch_voice_call_device_post; }; typedef struct a2dp_offload_init_config a2dp_offload_init_config_t; // END: A2DP_OFFLOAD FEATURE ==================================================== Loading Loading
hal/audio_extn/a2dp.c +9 −0 Original line number Diff line number Diff line Loading @@ -287,6 +287,7 @@ typedef enum { // --- external function dependency --- fp_platform_get_pcm_device_id_t fp_platform_get_pcm_device_id; fp_check_a2dp_restore_t fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post_t fp_platform_switch_voice_call_device_post; /* PCM config for ABR Feedback hostless front end */ static struct pcm_config pcm_config_abr = { Loading Loading @@ -3387,6 +3388,8 @@ void a2dp_init(void *adev, fp_platform_get_pcm_device_id = init_config.fp_platform_get_pcm_device_id; fp_check_a2dp_restore_l = init_config.fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post = init_config.fp_platform_switch_voice_call_device_post; reset_a2dp_enc_config_params(); reset_a2dp_source_dec_config_params(); Loading Loading @@ -3567,6 +3570,12 @@ int sco_start_configuration() ALOGD("sco_start_configuration start"); if (!a2dp.swb_configured) { /*Before starting sco config, we must ensure to set correct acdb id because sco cofiguration will trigger port open which needs acdb_id*/ fp_platform_switch_voice_call_device_post(a2dp.adev->platform, SND_DEVICE_OUT_BT_SCO_SWB, SND_DEVICE_IN_BT_SCO_MIC_SWB); a2dp.bt_encoder_format = CODEC_TYPE_APTX_AD_SPEECH; /* Configure AFE codec*/ if (configure_aptx_ad_speech_enc_fmt() && Loading
hal/audio_extn/audio_extn.c +1 −0 Original line number Diff line number Diff line Loading @@ -4751,6 +4751,7 @@ void audio_extn_a2dp_init(void *adev) a2dp_offload_init_config_t a2dp_init_config; a2dp_init_config.fp_platform_get_pcm_device_id = platform_get_pcm_device_id; a2dp_init_config.fp_check_a2dp_restore_l = check_a2dp_restore_l; a2dp_init_config.fp_platform_switch_voice_call_device_post = platform_switch_voice_call_device_post; a2dp_init(adev, a2dp_init_config); } Loading
hal/audio_extn/audio_extn.h +4 −0 Original line number Diff line number Diff line Loading @@ -161,6 +161,9 @@ typedef int (*fp_platform_get_default_app_type_v2_t)(void *, usecase_type_t); typedef int (*fp_platform_send_audio_calibration_t)(void *, struct audio_usecase *, int); typedef int (*fp_platform_get_pcm_device_id_t)(audio_usecase_t, int); typedef int (*fp_platform_switch_voice_call_device_post_t)(void *platform, snd_device_t out_snd_device, snd_device_t in_snd_device); typedef const char *(*fp_platform_get_snd_device_name_t)(snd_device_t); typedef int (*fp_platform_spkr_prot_is_wsa_analog_mode_t)(void *); typedef int (*fp_platform_get_snd_device_t)(snd_device_t); Loading Loading @@ -338,6 +341,7 @@ typedef int (*fp_check_a2dp_restore_t)(struct audio_device *, struct a2dp_offload_init_config { fp_platform_get_pcm_device_id_t fp_platform_get_pcm_device_id; fp_check_a2dp_restore_t fp_check_a2dp_restore_l; fp_platform_switch_voice_call_device_post_t fp_platform_switch_voice_call_device_post; }; typedef struct a2dp_offload_init_config a2dp_offload_init_config_t; // END: A2DP_OFFLOAD FEATURE ==================================================== Loading