audio-kernel: select RCO clock if lpi PCM logging is enabled
Select clock root as RCO for VA use-case whenever LPI PCM logging feature is enabled. Change-Id: I461b2afb9eeb595975d550d56c54e7548f0f2130 Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
This commit is contained in:
@@ -74,6 +74,8 @@ struct chmap_pdata {
|
||||
#define MAX_USR_INPUT 10
|
||||
|
||||
static int qos_vote_status;
|
||||
static bool lpi_pcm_logging_enable;
|
||||
|
||||
static struct dev_pm_qos_request latency_pm_qos_req; /* pm_qos request */
|
||||
static unsigned int qos_client_active_cnt;
|
||||
/* set audio task affinity to core 1 & 2 */
|
||||
@@ -966,13 +968,34 @@ static int msm_qos_ctl_get(struct snd_kcontrol *kcontrol,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int msm_lpi_logging_enable_put(struct snd_kcontrol *kcontrol,
|
||||
struct snd_ctl_elem_value *ucontrol)
|
||||
{
|
||||
lpi_pcm_logging_enable = ucontrol->value.integer.value[0];
|
||||
pr_debug("%s: lpi pcm logging enable: %d", __func__,
|
||||
lpi_pcm_logging_enable);
|
||||
|
||||
audio_prm_set_lpi_logging_status((int)lpi_pcm_logging_enable);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int msm_lpi_logging_enable_get(struct snd_kcontrol *kcontrol,
|
||||
struct snd_ctl_elem_value *ucontrol)
|
||||
{
|
||||
ucontrol->value.integer.value[0] = lpi_pcm_logging_enable;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const char *const qos_text[] = {"Disable", "Enable"};
|
||||
|
||||
static SOC_ENUM_SINGLE_EXT_DECL(qos_vote, qos_text);
|
||||
|
||||
static const struct snd_kcontrol_new card_pm_qos_controls[] = {
|
||||
static const struct snd_kcontrol_new card_mixer_controls[] = {
|
||||
SOC_ENUM_EXT("PM_QOS Vote", qos_vote,
|
||||
msm_qos_ctl_get, msm_qos_ctl_put),
|
||||
SOC_SINGLE_EXT("LPI PCM Logging Enable", 0, 0, 1, 0,
|
||||
msm_lpi_logging_enable_get, msm_lpi_logging_enable_put),
|
||||
};
|
||||
|
||||
static int msm_register_pm_qos_latency_controls(struct snd_soc_pcm_runtime *rtd)
|
||||
@@ -988,7 +1011,7 @@ static int msm_register_pm_qos_latency_controls(struct snd_soc_pcm_runtime *rtd)
|
||||
}
|
||||
|
||||
ret = snd_soc_add_component_controls(lpass_cdc_component,
|
||||
card_pm_qos_controls, ARRAY_SIZE(card_pm_qos_controls));
|
||||
card_mixer_controls, ARRAY_SIZE(card_mixer_controls));
|
||||
if (ret < 0) {
|
||||
pr_err("%s: add common snd controls failed: %d\n",
|
||||
__func__, ret);
|
||||
|
Reference in New Issue
Block a user