diff options
Diffstat (limited to 'sound/soc/samsung/s3c24xx-i2s.c')
-rw-r--r-- | sound/soc/samsung/s3c24xx-i2s.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/sound/soc/samsung/s3c24xx-i2s.c b/sound/soc/samsung/s3c24xx-i2s.c index 0aae3a3883dc..0022d51fd160 100644 --- a/sound/soc/samsung/s3c24xx-i2s.c +++ b/sound/soc/samsung/s3c24xx-i2s.c | |||
@@ -467,11 +467,29 @@ static struct snd_soc_dai_driver s3c24xx_i2s_dai = { | |||
467 | 467 | ||
468 | static __devinit int s3c24xx_iis_dev_probe(struct platform_device *pdev) | 468 | static __devinit int s3c24xx_iis_dev_probe(struct platform_device *pdev) |
469 | { | 469 | { |
470 | return snd_soc_register_dai(&pdev->dev, &s3c24xx_i2s_dai); | 470 | int ret = 0; |
471 | |||
472 | ret = s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai); | ||
473 | if (ret) { | ||
474 | pr_err("failed to register the dai\n"); | ||
475 | return ret; | ||
476 | } | ||
477 | |||
478 | ret = asoc_dma_platform_register(&pdev->dev); | ||
479 | if (ret) { | ||
480 | pr_err("failed to register the dma: %d\n", ret); | ||
481 | goto err; | ||
482 | } | ||
483 | |||
484 | return 0; | ||
485 | err: | ||
486 | snd_soc_unregister_dai(&pdev->dev); | ||
487 | return ret; | ||
471 | } | 488 | } |
472 | 489 | ||
473 | static __devexit int s3c24xx_iis_dev_remove(struct platform_device *pdev) | 490 | static __devexit int s3c24xx_iis_dev_remove(struct platform_device *pdev) |
474 | { | 491 | { |
492 | asoc_dma_platform_unregister(&pdev->dev); | ||
475 | snd_soc_unregister_dai(&pdev->dev); | 493 | snd_soc_unregister_dai(&pdev->dev); |
476 | return 0; | 494 | return 0; |
477 | } | 495 | } |