Revert "hal: set backend channel number to one for mono speaker"
This reverts commit 31d944cd941a5f4d75479278eb75aa89854c7c47.
Removal of HAL access to channel mixer ctrl fixes the issue
as a better approach.
Change-Id: Id9d61d1370cf3be4ce3998515d70922532e4a526
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index b56a363..2d04a32 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -3250,12 +3250,7 @@
snd_device == SND_DEVICE_OUT_SPEAKER_PROTECTED ||
snd_device == SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT ||
snd_device == SND_DEVICE_OUT_SPEAKER_PROTECTED_RAS ||
- snd_device == SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT_RAS ||
- snd_device == SND_DEVICE_OUT_VOICE_SPEAKER ||
- snd_device == SND_DEVICE_OUT_VOICE_SPEAKER_WSA ||
- snd_device == SND_DEVICE_OUT_VOICE_SPEAKER_VBAT ||
- snd_device == SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED ||
- snd_device == SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED_VBAT ) {
+ snd_device == SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT_RAS) {
ret = true;
}
return ret;
@@ -6245,9 +6240,6 @@
}
}
- if (!(hw_info_is_stereo_spkr(my_data->hw_info)) && check_snd_device_is_speaker(snd_device))
- channels = 1;
-
/* Native playback is preferred for Headphone/HS device over 192Khz */
if (!voice_call_active && codec_device_supports_native_playback(usecase->devices)) {
if (audio_is_true_native_stream_active(adev)) {
@@ -6387,7 +6379,6 @@
// Force routing if the expected bitwdith or samplerate
// is not same as current backend comfiguration
if ((bit_width != my_data->current_backend_cfg[backend_idx].bit_width) ||
- (channels != my_data->current_backend_cfg[backend_idx].channels) ||
(sample_rate != my_data->current_backend_cfg[backend_idx].sample_rate) ||
passthrough_enabled || channels_updated || service_interval_update ) {
backend_cfg->bit_width = bit_width;
@@ -6445,7 +6436,12 @@
backend_cfg.bit_width = usecase->stream.out->bit_width;
backend_cfg.sample_rate = usecase->stream.out->sample_rate;
backend_cfg.format = usecase->stream.out->format;
- backend_cfg.channels = audio_channel_count_from_out_mask(usecase->stream.out->channel_mask);
+ if (!(hw_info_is_stereo_spkr(my_data->hw_info)) &&
+ check_snd_device_is_speaker(snd_device))
+ backend_cfg.channels = 1;
+ else
+ backend_cfg.channels =
+ audio_channel_count_from_out_mask(usecase->stream.out->channel_mask);
}
if (audio_extn_is_dsp_bit_width_enforce_mode_supported(usecase->stream.out->flags) &&
(adev->dsp_bit_width_enforce_mode > backend_cfg.bit_width))