]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
asoc: es755: add routine es755_get_select_endpoint
authorViraj Karandikar <vkarandikar@nvidia.com>
Fri, 22 Jan 2016 11:54:14 +0000 (17:24 +0530)
committermobile promotions <svcmobile_promotions@nvidia.com>
Thu, 10 Mar 2016 11:09:49 +0000 (03:09 -0800)
Setting control via tinymix requires get function
to be implemented.

Bug 200100724

Change-Id: I19795e943aca1ece8ddfba40670a1a7c0424501d
Signed-off-by: Viraj Karandikar <vkarandikar@nvidia.com>
Reviewed-on: http://git-master/r/936223
GVS: Gerrit_Virtual_Submit
Reviewed-by: Srinivas Anne <sanne@nvidia.com>
Reviewed-by: Ravindra Lokhande <rlokhande@nvidia.com>
sound/soc/codecs/audience/es755.c

index 8cffdb58a6f31da675c3cf04f72c41cb64c7eb9c..1644eab94f81a34d163801c59e12d2c05ee3f67c 100644 (file)
@@ -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,