aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/usb/mixer.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index cdd19d7fe500..78a5abda6793 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -881,8 +881,17 @@ static int mixer_ctl_feature_info(struct snd_kcontrol *kcontrol, struct snd_ctl_
881 uinfo->value.integer.min = 0; 881 uinfo->value.integer.min = 0;
882 uinfo->value.integer.max = 1; 882 uinfo->value.integer.max = 1;
883 } else { 883 } else {
884 if (! cval->initialized) 884 if (!cval->initialized) {
885 get_min_max(cval, 0); 885 get_min_max(cval, 0);
886 if (cval->initialized && cval->dBmin >= cval->dBmax) {
887 kcontrol->vd[0].access &=
888 ~(SNDRV_CTL_ELEM_ACCESS_TLV_READ |
889 SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK);
890 snd_ctl_notify(cval->mixer->chip->card,
891 SNDRV_CTL_EVENT_MASK_INFO,
892 &kcontrol->id);
893 }
894 }
886 uinfo->value.integer.min = 0; 895 uinfo->value.integer.min = 0;
887 uinfo->value.integer.max = 896 uinfo->value.integer.max =
888 (cval->max - cval->min + cval->res - 1) / cval->res; 897 (cval->max - cval->min + cval->res - 1) / cval->res;