From 7ceafae61ebf068c61099d354e631d02d674da62 Mon Sep 17 00:00:00 2001 From: Vatsal Bucha Date: Thu, 19 Dec 2019 12:19:12 +0530 Subject: [PATCH] ASoC: Add doa tracking params only for LE platforms Doa tracking params are applicable only for LE platforms. Add respective check for the same. Also add config to enable doa params for LE. Change-Id: Ia8c2fd095deb44a3dd0b958da0b73c94dbc7d819 Signed-off-by: Vatsal Bucha --- asoc/msm-pcm-routing-v2.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/asoc/msm-pcm-routing-v2.c b/asoc/msm-pcm-routing-v2.c index abc4c59a3077..46dd03a61132 100644 --- a/asoc/msm-pcm-routing-v2.c +++ b/asoc/msm-pcm-routing-v2.c @@ -23315,6 +23315,9 @@ static const struct snd_kcontrol_new msm_source_tracking_controls[] = { .info = msm_source_tracking_info, .get = msm_audio_source_tracking_get, }, +}; + +static const struct snd_kcontrol_new msm_source_doa_tracking_controls[] = { { .access = SNDRV_CTL_ELEM_ACCESS_READ, .iface = SNDRV_CTL_ELEM_IFACE_MIXER, @@ -30159,6 +30162,20 @@ static const struct snd_pcm_ops msm_routing_pcm_ops = { .prepare = msm_pcm_routing_prepare, }; +#ifdef CONFIG_DOA_PARAMS_ENABLED +void msm_routing_add_doa_control(struct snd_soc_component *component) +{ + snd_soc_add_component_controls(component, + msm_source_doa_tracking_controls, + ARRAY_SIZE(msm_source_doa_tracking_controls)); +} +#else +void msm_routing_add_doa_control(struct snd_soc_component *component) +{ + return; +} +#endif + /* Not used but frame seems to require it */ static int msm_routing_probe(struct snd_soc_component *component) { @@ -30224,6 +30241,8 @@ static int msm_routing_probe(struct snd_soc_component *component) msm_routing_be_dai_name_table_mixer_controls, ARRAY_SIZE(msm_routing_be_dai_name_table_mixer_controls)); + /* Add doa control based on config */ + msm_routing_add_doa_control(component); snd_soc_add_component_controls(component, msm_source_tracking_controls, ARRAY_SIZE(msm_source_tracking_controls)); snd_soc_add_component_controls(component, adm_channel_config_controls,