diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-12-10 09:00:45 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-12-10 09:00:45 +0100 |
commit | 97768a8e658605a905ba0d908d1b23b475170bed (patch) | |
tree | 0431dd9a118c138d164c263033a53502e4c01586 /sound/soc/samsung/ac97.c | |
parent | ALSA: usb6fire: prevent driver panic state when stopping (diff) | |
parent | ASoC: codecs: remove __dev* attributes (diff) | |
download | linux-97768a8e658605a905ba0d908d1b23b475170bed.tar.xz linux-97768a8e658605a905ba0d908d1b23b475170bed.zip |
Merge tag 'asoc-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-next
ASoC: Updates for v3.8
Some incremental updates, nothing too exciting. The biggest block here
is the __dev annotation removal stuff from Bill, everything else is the
usual driver-specific stuff - a combination of fixes and development.
There will be at least more more set of fixes to come but I wanted to
get these out ready for the merge window to make sure Bill's stuff makes
it in.
Diffstat (limited to 'sound/soc/samsung/ac97.c')
-rw-r--r-- | sound/soc/samsung/ac97.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/sound/soc/samsung/ac97.c b/sound/soc/samsung/ac97.c index 386bab1f99ab..0df3c5644cfa 100644 --- a/sound/soc/samsung/ac97.c +++ b/sound/soc/samsung/ac97.c @@ -370,7 +370,7 @@ static struct snd_soc_dai_driver s3c_ac97_dai[] = { }, }; -static __devinit int s3c_ac97_probe(struct platform_device *pdev) +static int s3c_ac97_probe(struct platform_device *pdev) { struct resource *mem_res, *dmatx_res, *dmarx_res, *dmamic_res, *irq_res; struct s3c_audio_pdata *ac97_pdata; @@ -462,8 +462,15 @@ static __devinit int s3c_ac97_probe(struct platform_device *pdev) if (ret) goto err5; - return 0; + ret = asoc_dma_platform_register(&pdev->dev); + if (ret) { + dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret); + goto err6; + } + return 0; +err6: + snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai)); err5: free_irq(irq_res->start, NULL); err4: @@ -478,10 +485,11 @@ err1: return ret; } -static __devexit int s3c_ac97_remove(struct platform_device *pdev) +static int s3c_ac97_remove(struct platform_device *pdev) { struct resource *mem_res, *irq_res; + asoc_dma_platform_unregister(&pdev->dev); snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai)); irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); @@ -502,7 +510,7 @@ static __devexit int s3c_ac97_remove(struct platform_device *pdev) static struct platform_driver s3c_ac97_driver = { .probe = s3c_ac97_probe, - .remove = __devexit_p(s3c_ac97_remove), + .remove = s3c_ac97_remove, .driver = { .name = "samsung-ac97", .owner = THIS_MODULE, |