Loading hal/audio_extn/audio_extn.h +1 −0 Original line number Diff line number Diff line Loading @@ -1097,6 +1097,7 @@ void audio_extn_source_track_get_parameters(const struct audio_device *adev, void audio_extn_fm_set_parameters(struct audio_device *adev, struct str_parms *parms); void audio_extn_fm_get_parameters(struct str_parms *query, struct str_parms *reply); void audio_extn_fm_route_on_selected_device(struct audio_device *adev, audio_devices_t device); #ifndef APTX_DECODER_ENABLED #define audio_extn_aptx_dec_set_license(adev); (0) Loading hal/audio_extn/fm.c +20 −0 Original line number Diff line number Diff line Loading @@ -387,3 +387,23 @@ void fm_set_parameters(struct audio_device *adev, exit: ALOGV("%s: exit", __func__); } void audio_extn_fm_route_on_selected_device(struct audio_device *adev, audio_devices_t device) { struct listnode *node; struct audio_usecase *usecase; if (fmmod.is_fm_running) { list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->id == USECASE_AUDIO_PLAYBACK_FM) { if (fmmod.fm_device != device) { ALOGV("%s selected routing device %x current device %x" "are different, reroute on selected device", __func__, fmmod.fm_device, device); select_devices(adev, usecase->id); } } } } } hal/audio_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -4206,6 +4206,8 @@ static int out_standby(struct audio_stream *stream) if (do_stop) { stop_output_stream(out); } // if fm is active route on selected device in UI audio_extn_fm_route_on_selected_device(adev, out->devices); pthread_mutex_unlock(&adev->lock); } pthread_mutex_unlock(&out->lock); Loading Loading
hal/audio_extn/audio_extn.h +1 −0 Original line number Diff line number Diff line Loading @@ -1097,6 +1097,7 @@ void audio_extn_source_track_get_parameters(const struct audio_device *adev, void audio_extn_fm_set_parameters(struct audio_device *adev, struct str_parms *parms); void audio_extn_fm_get_parameters(struct str_parms *query, struct str_parms *reply); void audio_extn_fm_route_on_selected_device(struct audio_device *adev, audio_devices_t device); #ifndef APTX_DECODER_ENABLED #define audio_extn_aptx_dec_set_license(adev); (0) Loading
hal/audio_extn/fm.c +20 −0 Original line number Diff line number Diff line Loading @@ -387,3 +387,23 @@ void fm_set_parameters(struct audio_device *adev, exit: ALOGV("%s: exit", __func__); } void audio_extn_fm_route_on_selected_device(struct audio_device *adev, audio_devices_t device) { struct listnode *node; struct audio_usecase *usecase; if (fmmod.is_fm_running) { list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->id == USECASE_AUDIO_PLAYBACK_FM) { if (fmmod.fm_device != device) { ALOGV("%s selected routing device %x current device %x" "are different, reroute on selected device", __func__, fmmod.fm_device, device); select_devices(adev, usecase->id); } } } } }
hal/audio_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -4206,6 +4206,8 @@ static int out_standby(struct audio_stream *stream) if (do_stop) { stop_output_stream(out); } // if fm is active route on selected device in UI audio_extn_fm_route_on_selected_device(adev, out->devices); pthread_mutex_unlock(&adev->lock); } pthread_mutex_unlock(&out->lock); Loading