diff options
Diffstat (limited to 'sound/parisc/harmony.c')
-rw-r--r-- | sound/parisc/harmony.c | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/sound/parisc/harmony.c b/sound/parisc/harmony.c index 4b20be79c1dd..99b64cb3cef8 100644 --- a/sound/parisc/harmony.c +++ b/sound/parisc/harmony.c @@ -44,6 +44,7 @@ #include <linux/interrupt.h> #include <linux/spinlock.h> #include <linux/dma-mapping.h> +#include <linux/io.h> #include <sound/core.h> #include <sound/pcm.h> @@ -52,7 +53,6 @@ #include <sound/initval.h> #include <sound/info.h> -#include <asm/io.h> #include <asm/hardware.h> #include <asm/parisc-device.h> @@ -776,15 +776,9 @@ static int snd_harmony_captureroute_info(struct snd_kcontrol *kc, struct snd_ctl_elem_info *uinfo) { - static char *texts[2] = { "Line", "Mic" }; - uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; - uinfo->count = 1; - uinfo->value.enumerated.items = 2; - if (uinfo->value.enumerated.item > 1) - uinfo->value.enumerated.item = 1; - strcpy(uinfo->value.enumerated.name, - texts[uinfo->value.enumerated.item]); - return 0; + static const char * const texts[2] = { "Line", "Mic" }; + + return snd_ctl_enum_info(uinfo, 1, 2, texts); } static int @@ -899,9 +893,7 @@ snd_harmony_free(struct snd_harmony *h) if (h->irq >= 0) free_irq(h->irq, h); - if (h->iobase) - iounmap(h->iobase); - + iounmap(h->iobase); kfree(h); return 0; } |