diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2011-01-10 16:30:13 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-01-10 16:47:07 +0100 |
commit | 2a1803a7291e82823effef0b48b0039324d224c6 (patch) | |
tree | aef83bacecd977821c94466fa38ced959343c6d4 | |
parent | bed6896d0be1de12eb6237a43a4beaaf7dcfb42c (diff) | |
download | linux-3.10-2a1803a7291e82823effef0b48b0039324d224c6.tar.gz linux-3.10-2a1803a7291e82823effef0b48b0039324d224c6.tar.bz2 linux-3.10-2a1803a7291e82823effef0b48b0039324d224c6.zip |
ALSA: usb-audio: use enum control info helper
Simplify info callbacks by using the snd_ctl_enum_info() helper function.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/usb/midi.c | 8 | ||||
-rw-r--r-- | sound/usb/mixer.c | 11 |
2 files changed, 3 insertions, 16 deletions
diff --git a/sound/usb/midi.c b/sound/usb/midi.c index 25bce7e5b1a..d7021cb0104 100644 --- a/sound/usb/midi.c +++ b/sound/usb/midi.c @@ -1729,13 +1729,7 @@ static int roland_load_info(struct snd_kcontrol *kcontrol, { static const char *const names[] = { "High Load", "Light Load" }; - info->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; - info->count = 1; - info->value.enumerated.items = 2; - if (info->value.enumerated.item > 1) - info->value.enumerated.item = 1; - strcpy(info->value.enumerated.name, names[info->value.enumerated.item]); - return 0; + return snd_ctl_enum_info(info, 1, 2, names); } static int roland_load_get(struct snd_kcontrol *kcontrol, diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index f2d74d654b3..7df89b3d7de 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -1633,18 +1633,11 @@ static int parse_audio_extension_unit(struct mixer_build *state, int unitid, voi static int mixer_ctl_selector_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo) { struct usb_mixer_elem_info *cval = kcontrol->private_data; - char **itemlist = (char **)kcontrol->private_value; + const char **itemlist = (const char **)kcontrol->private_value; if (snd_BUG_ON(!itemlist)) return -EINVAL; - uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; - uinfo->count = 1; - uinfo->value.enumerated.items = cval->max; - if (uinfo->value.enumerated.item >= cval->max) - uinfo->value.enumerated.item = cval->max - 1; - strlcpy(uinfo->value.enumerated.name, itemlist[uinfo->value.enumerated.item], - sizeof(uinfo->value.enumerated.name)); - return 0; + return snd_ctl_enum_info(uinfo, 1, cval->max, itemlist); } /* get callback for selector unit */ |