diff options
Diffstat (limited to 'sound/drivers/ml403-ac97cr.c')
| -rw-r--r-- | sound/drivers/ml403-ac97cr.c | 41 | 
1 files changed, 14 insertions, 27 deletions
diff --git a/sound/drivers/ml403-ac97cr.c b/sound/drivers/ml403-ac97cr.c index a1282c1c059..33ed76530d0 100644 --- a/sound/drivers/ml403-ac97cr.c +++ b/sound/drivers/ml403-ac97cr.c @@ -34,7 +34,7 @@   */  #include <linux/init.h> -#include <linux/moduleparam.h> +#include <linux/module.h>  #include <linux/platform_device.h> @@ -73,7 +73,7 @@ MODULE_SUPPORTED_DEVICE("{{Xilinx,ML403 AC97 Controller Reference}}");  static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX;  static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; -static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE; +static bool enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE;  module_param_array(index, int, NULL, 0444);  MODULE_PARM_DESC(index, "Index value for ML403 AC97 Controller Reference."); @@ -1063,7 +1063,7 @@ snd_ml403_ac97cr_codec_write(struct snd_ac97 *ac97, unsigned short reg,  	return;  } -static int __devinit +static int  snd_ml403_ac97cr_chip_init(struct snd_ml403_ac97cr *ml403_ac97cr)  {  	unsigned long end_time; @@ -1108,7 +1108,7 @@ static int snd_ml403_ac97cr_dev_free(struct snd_device *snddev)  	return snd_ml403_ac97cr_free(ml403_ac97cr);  } -static int __devinit +static int  snd_ml403_ac97cr_create(struct snd_card *card, struct platform_device *pfdev,  			struct snd_ml403_ac97cr **rml403_ac97cr)  { @@ -1143,8 +1143,8 @@ snd_ml403_ac97cr_create(struct snd_card *card, struct platform_device *pfdev,  					     (resource->start) + 1);  	if (ml403_ac97cr->port == NULL) {  		snd_printk(KERN_ERR SND_ML403_AC97CR_DRIVER ": " -			   "unable to remap memory region (%x to %x)\n", -			   resource->start, resource->end); +			   "unable to remap memory region (%pR)\n", +			   resource);  		snd_ml403_ac97cr_free(ml403_ac97cr);  		return -EBUSY;  	} @@ -1153,7 +1153,7 @@ snd_ml403_ac97cr_create(struct snd_card *card, struct platform_device *pfdev,  		   "0x%x done\n", (unsigned int)ml403_ac97cr->port);  	/* get irq */  	irq = platform_get_irq(pfdev, 0); -	if (request_irq(irq, snd_ml403_ac97cr_irq, IRQF_DISABLED, +	if (request_irq(irq, snd_ml403_ac97cr_irq, 0,  			dev_name(&pfdev->dev), (void *)ml403_ac97cr)) {  		snd_printk(KERN_ERR SND_ML403_AC97CR_DRIVER ": "  			   "unable to grab IRQ %d\n", @@ -1166,7 +1166,7 @@ snd_ml403_ac97cr_create(struct snd_card *card, struct platform_device *pfdev,  		   "request (playback) irq %d done\n",  		   ml403_ac97cr->irq);  	irq = platform_get_irq(pfdev, 1); -	if (request_irq(irq, snd_ml403_ac97cr_irq, IRQF_DISABLED, +	if (request_irq(irq, snd_ml403_ac97cr_irq, 0,  			dev_name(&pfdev->dev), (void *)ml403_ac97cr)) {  		snd_printk(KERN_ERR SND_ML403_AC97CR_DRIVER ": "  			   "unable to grab IRQ %d\n", @@ -1204,7 +1204,7 @@ static void snd_ml403_ac97cr_mixer_free(struct snd_ac97 *ac97)  	PDEBUG(INIT_INFO, "mixer_free(): (done)\n");  } -static int __devinit +static int  snd_ml403_ac97cr_mixer(struct snd_ml403_ac97cr *ml403_ac97cr)  {  	struct snd_ac97_bus *bus; @@ -1237,7 +1237,7 @@ snd_ml403_ac97cr_mixer(struct snd_ml403_ac97cr *ml403_ac97cr)  	return err;  } -static int __devinit +static int  snd_ml403_ac97cr_pcm(struct snd_ml403_ac97cr *ml403_ac97cr, int device,  		     struct snd_pcm **rpcm)  { @@ -1268,7 +1268,7 @@ snd_ml403_ac97cr_pcm(struct snd_ml403_ac97cr *ml403_ac97cr, int device,  	return 0;  } -static int __devinit snd_ml403_ac97cr_probe(struct platform_device *pfdev) +static int snd_ml403_ac97cr_probe(struct platform_device *pfdev)  {  	struct snd_card *card;  	struct snd_ml403_ac97cr *ml403_ac97cr = NULL; @@ -1280,7 +1280,8 @@ static int __devinit snd_ml403_ac97cr_probe(struct platform_device *pfdev)  	if (!enable[dev])  		return -ENOENT; -	err = snd_card_create(index[dev], id[dev], THIS_MODULE, 0, &card); +	err = snd_card_new(&pfdev->dev, index[dev], id[dev], THIS_MODULE, +			   0, &card);  	if (err < 0)  		return err;  	err = snd_ml403_ac97cr_create(card, pfdev, &ml403_ac97cr); @@ -1310,8 +1311,6 @@ static int __devinit snd_ml403_ac97cr_probe(struct platform_device *pfdev)  		(unsigned long)ml403_ac97cr->port, ml403_ac97cr->irq,  		ml403_ac97cr->capture_irq, dev + 1); -	snd_card_set_dev(card, &pfdev->dev); -  	err = snd_card_register(card);  	if (err < 0) {  		snd_card_free(card); @@ -1325,7 +1324,6 @@ static int __devinit snd_ml403_ac97cr_probe(struct platform_device *pfdev)  static int snd_ml403_ac97cr_remove(struct platform_device *pfdev)  {  	snd_card_free(platform_get_drvdata(pfdev)); -	platform_set_drvdata(pfdev, NULL);  	return 0;  } @@ -1341,15 +1339,4 @@ static struct platform_driver snd_ml403_ac97cr_driver = {  	},  }; -static int __init alsa_card_ml403_ac97cr_init(void) -{ -	return platform_driver_register(&snd_ml403_ac97cr_driver); -} - -static void __exit alsa_card_ml403_ac97cr_exit(void) -{ -	platform_driver_unregister(&snd_ml403_ac97cr_driver); -} - -module_init(alsa_card_ml403_ac97cr_init) -module_exit(alsa_card_ml403_ac97cr_exit) +module_platform_driver(snd_ml403_ac97cr_driver);  | 
