|
@@ -2248,7 +2248,8 @@ EXPORT_SYMBOL_GPL(snd_soc_info_volsw_ext);
|
|
|
* @kcontrol: mixer control
|
|
|
* @uinfo: control element information
|
|
|
*
|
|
|
- * Callback to provide information about a single mixer control.
|
|
|
+ * Callback to provide information about a single mixer control, or a double
|
|
|
+ * mixer control that spans 2 registers.
|
|
|
*
|
|
|
* Returns 0 for success.
|
|
|
*/
|
|
@@ -2258,8 +2259,6 @@ int snd_soc_info_volsw(struct snd_kcontrol *kcontrol,
|
|
|
struct soc_mixer_control *mc =
|
|
|
(struct soc_mixer_control *)kcontrol->private_value;
|
|
|
int platform_max;
|
|
|
- unsigned int shift = mc->shift;
|
|
|
- unsigned int rshift = mc->rshift;
|
|
|
|
|
|
if (!mc->platform_max)
|
|
|
mc->platform_max = mc->max;
|
|
@@ -2270,7 +2269,7 @@ int snd_soc_info_volsw(struct snd_kcontrol *kcontrol,
|
|
|
else
|
|
|
uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
|
|
|
|
|
|
- uinfo->count = shift == rshift ? 1 : 2;
|
|
|
+ uinfo->count = snd_soc_volsw_is_stereo(mc) ? 2 : 1;
|
|
|
uinfo->value.integer.min = 0;
|
|
|
uinfo->value.integer.max = platform_max;
|
|
|
return 0;
|
|
@@ -2355,39 +2354,6 @@ int snd_soc_put_volsw(struct snd_kcontrol *kcontrol,
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(snd_soc_put_volsw);
|
|
|
|
|
|
-/**
|
|
|
- * snd_soc_info_volsw_2r - double mixer info callback
|
|
|
- * @kcontrol: mixer control
|
|
|
- * @uinfo: control element information
|
|
|
- *
|
|
|
- * Callback to provide information about a double mixer control that
|
|
|
- * spans 2 codec registers.
|
|
|
- *
|
|
|
- * Returns 0 for success.
|
|
|
- */
|
|
|
-int snd_soc_info_volsw_2r(struct snd_kcontrol *kcontrol,
|
|
|
- struct snd_ctl_elem_info *uinfo)
|
|
|
-{
|
|
|
- struct soc_mixer_control *mc =
|
|
|
- (struct soc_mixer_control *)kcontrol->private_value;
|
|
|
- int platform_max;
|
|
|
-
|
|
|
- if (!mc->platform_max)
|
|
|
- mc->platform_max = mc->max;
|
|
|
- platform_max = mc->platform_max;
|
|
|
-
|
|
|
- if (platform_max == 1 && !strstr(kcontrol->id.name, " Volume"))
|
|
|
- uinfo->type = SNDRV_CTL_ELEM_TYPE_BOOLEAN;
|
|
|
- else
|
|
|
- uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
|
|
|
-
|
|
|
- uinfo->count = 2;
|
|
|
- uinfo->value.integer.min = 0;
|
|
|
- uinfo->value.integer.max = platform_max;
|
|
|
- return 0;
|
|
|
-}
|
|
|
-EXPORT_SYMBOL_GPL(snd_soc_info_volsw_2r);
|
|
|
-
|
|
|
/**
|
|
|
* snd_soc_get_volsw_2r - double mixer get callback
|
|
|
* @kcontrol: mixer control
|