aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/samsung/ac97.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/samsung/ac97.c')
-rw-r--r--sound/soc/samsung/ac97.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/sound/soc/samsung/ac97.c b/sound/soc/samsung/ac97.c
index 386bab1f99ab..cd6c7073c50d 100644
--- a/sound/soc/samsung/ac97.c
+++ b/sound/soc/samsung/ac97.c
@@ -462,8 +462,15 @@ static __devinit int s3c_ac97_probe(struct platform_device *pdev)
462 if (ret) 462 if (ret)
463 goto err5; 463 goto err5;
464 464
465 return 0; 465 ret = asoc_dma_platform_register(&pdev->dev);
466 if (ret) {
467 dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret);
468 goto err6;
469 }
466 470
471 return 0;
472err6:
473 snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai));
467err5: 474err5:
468 free_irq(irq_res->start, NULL); 475 free_irq(irq_res->start, NULL);
469err4: 476err4:
@@ -482,6 +489,7 @@ static __devexit int s3c_ac97_remove(struct platform_device *pdev)
482{ 489{
483 struct resource *mem_res, *irq_res; 490 struct resource *mem_res, *irq_res;
484 491
492 asoc_dma_platform_unregister(&pdev->dev);
485 snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai)); 493 snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai));
486 494
487 irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); 495 irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);