diff options
Diffstat (limited to 'sound/mips/hal2.c')
| -rw-r--r-- | sound/mips/hal2.c | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/sound/mips/hal2.c b/sound/mips/hal2.c index 9a88cdfd952..23441b9e614 100644 --- a/sound/mips/hal2.c +++ b/sound/mips/hal2.c @@ -25,6 +25,8 @@ #include <linux/dma-mapping.h> #include <linux/platform_device.h> #include <linux/io.h> +#include <linux/slab.h> +#include <linux/module.h> #include <asm/sgi/hpc3.h> #include <asm/sgi/ip22.h> @@ -258,7 +260,7 @@ static int hal2_gain_put(struct snd_kcontrol *kcontrol, return old != new; } -static struct snd_kcontrol_new hal2_ctrl_headphone __devinitdata = { +static struct snd_kcontrol_new hal2_ctrl_headphone = { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = "Headphone Playback Volume", .access = SNDRV_CTL_ELEM_ACCESS_READWRITE, @@ -268,7 +270,7 @@ static struct snd_kcontrol_new hal2_ctrl_headphone __devinitdata = { .put = hal2_gain_put, }; -static struct snd_kcontrol_new hal2_ctrl_mic __devinitdata = { +static struct snd_kcontrol_new hal2_ctrl_mic = { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = "Mic Capture Volume", .access = SNDRV_CTL_ELEM_ACCESS_READWRITE, @@ -278,7 +280,7 @@ static struct snd_kcontrol_new hal2_ctrl_mic __devinitdata = { .put = hal2_gain_put, }; -static int __devinit hal2_mixer_create(struct snd_hal2 *hal2) +static int hal2_mixer_create(struct snd_hal2 *hal2) { int err; @@ -731,7 +733,7 @@ static struct snd_pcm_ops hal2_capture_ops = { .ack = hal2_capture_ack, }; -static int __devinit hal2_pcm_create(struct snd_hal2 *hal2) +static int hal2_pcm_create(struct snd_hal2 *hal2) { struct snd_pcm *pcm; int err; @@ -872,13 +874,13 @@ static int hal2_create(struct snd_card *card, struct snd_hal2 **rchip) return 0; } -static int __devinit hal2_probe(struct platform_device *pdev) +static int hal2_probe(struct platform_device *pdev) { struct snd_card *card; struct snd_hal2 *chip; int err; - err = snd_card_create(index, id, THIS_MODULE, 0, &card); + err = snd_card_new(&pdev->dev, index, id, THIS_MODULE, 0, &card); if (err < 0) return err; @@ -887,7 +889,6 @@ static int __devinit hal2_probe(struct platform_device *pdev) snd_card_free(card); return err; } - snd_card_set_dev(card, &pdev->dev); err = hal2_pcm_create(chip); if (err < 0) { @@ -915,33 +916,21 @@ static int __devinit hal2_probe(struct platform_device *pdev) return 0; } -static int __devexit hal2_remove(struct platform_device *pdev) +static int hal2_remove(struct platform_device *pdev) { struct snd_card *card = platform_get_drvdata(pdev); snd_card_free(card); - platform_set_drvdata(pdev, NULL); return 0; } static struct platform_driver hal2_driver = { .probe = hal2_probe, - .remove = __devexit_p(hal2_remove), + .remove = hal2_remove, .driver = { .name = "sgihal2", .owner = THIS_MODULE, } }; -static int __init alsa_card_hal2_init(void) -{ - return platform_driver_register(&hal2_driver); -} - -static void __exit alsa_card_hal2_exit(void) -{ - platform_driver_unregister(&hal2_driver); -} - -module_init(alsa_card_hal2_init); -module_exit(alsa_card_hal2_exit); +module_platform_driver(hal2_driver); |
