From 0194ba76f5e66612665dad2c612e51ec862aea27 Mon Sep 17 00:00:00 2001 From: Viraj Karandikar Date: Fri, 22 Jan 2016 17:24:14 +0530 Subject: [PATCH] asoc: es755: add routine es755_get_select_endpoint Setting control via tinymix requires get function to be implemented. Bug 200100724 Change-Id: I19795e943aca1ece8ddfba40670a1a7c0424501d Signed-off-by: Viraj Karandikar Reviewed-on: http://git-master/r/936223 GVS: Gerrit_Virtual_Submit Reviewed-by: Srinivas Anne Reviewed-by: Ravindra Lokhande --- sound/soc/codecs/audience/es755.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/audience/es755.c b/sound/soc/codecs/audience/es755.c index 8cffdb58a6f..1644eab94f8 100644 --- a/sound/soc/codecs/audience/es755.c +++ b/sound/soc/codecs/audience/es755.c @@ -1805,6 +1805,15 @@ static int es755_get_hs_delay_value(struct snd_kcontrol *kcontrol, return 0; } +static int es755_get_select_endpoint(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) +{ + struct escore_priv *escore = &escore_priv; + + ucontrol->value.integer.value[0] = escore->selected_endpoint; + return 0; +} + static int es755_put_select_endpoint(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { @@ -1842,7 +1851,8 @@ static int es755_put_digital_gain(struct snd_kcontrol *kcontrol, unsigned int val = e->values[ucontrol->value.enumerated.item[0]]; unsigned int mask = e->mask; - pr_debug("%s: Set digital gain 0x%x.\n", __func__, val); + pr_debug("%s: Endpoint %d Set digital gain 0x%x.\n", __func__, + escore->selected_endpoint, val); if (ucontrol->value.enumerated.item[0] > (e->max - 1)) { dev_err(escore_priv.dev, "%s(): Enum exceed the maximum!\n", @@ -1989,7 +1999,7 @@ static struct snd_kcontrol_new es755_snd_controls[] = { escore_get_streaming_mode, escore_put_streaming_mode), SOC_ENUM_EXT("Select Endpoint", es755_path_id_enum, - NULL, + es755_get_select_endpoint, es755_put_select_endpoint), SOC_ENUM_EXT("Set Digital Gain", digital_gain_enum, es755_get_digital_gain, -- 2.39.2