aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSylwester Nawrocki <s.nawrocki@samsung.com>2016-10-25 11:08:40 -0400
committerMark Brown <broonie@kernel.org>2016-10-25 15:26:06 -0400
commitb57a089bd4213b5e33007f8293bf83a8b14e4729 (patch)
tree6577f4c9ebfb04fe67edf6adbf95996b3e0ec256
parenta0a594369c8fc09786bb14772207303e70ccca9a (diff)
ASoC: samsung: s3c24xx-i2s: Don't use platform_data for DMA parameters
Since the s3c24xx-dma is converted to use DMA map we can rely on the DMA subsystem to match DMA channels and slave devices, rather than passing DMA details from platform_data. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/samsung/s3c24xx-i2s.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/sound/soc/samsung/s3c24xx-i2s.c b/sound/soc/samsung/s3c24xx-i2s.c
index d59a47d8ca0f..29196a9933a6 100644
--- a/sound/soc/samsung/s3c24xx-i2s.c
+++ b/sound/soc/samsung/s3c24xx-i2s.c
@@ -30,8 +30,6 @@
30#include "dma.h" 30#include "dma.h"
31#include "s3c24xx-i2s.h" 31#include "s3c24xx-i2s.h"
32 32
33#include <linux/platform_data/asoc-s3c.h>
34
35static struct snd_dmaengine_dai_dma_data s3c24xx_i2s_pcm_stereo_out = { 33static struct snd_dmaengine_dai_dma_data s3c24xx_i2s_pcm_stereo_out = {
36 .addr_width = 2, 34 .addr_width = 2,
37}; 35};
@@ -449,14 +447,8 @@ static const struct snd_soc_component_driver s3c24xx_i2s_component = {
449 447
450static int s3c24xx_iis_dev_probe(struct platform_device *pdev) 448static int s3c24xx_iis_dev_probe(struct platform_device *pdev)
451{ 449{
452 int ret = 0;
453 struct resource *res; 450 struct resource *res;
454 struct s3c_audio_pdata *pdata = dev_get_platdata(&pdev->dev); 451 int ret = 0;
455
456 if (!pdata) {
457 dev_err(&pdev->dev, "missing platform data");
458 return -ENXIO;
459 }
460 452
461 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 453 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
462 if (!res) { 454 if (!res) {
@@ -468,9 +460,7 @@ static int s3c24xx_iis_dev_probe(struct platform_device *pdev)
468 return PTR_ERR(s3c24xx_i2s.regs); 460 return PTR_ERR(s3c24xx_i2s.regs);
469 461
470 s3c24xx_i2s_pcm_stereo_out.addr = res->start + S3C2410_IISFIFO; 462 s3c24xx_i2s_pcm_stereo_out.addr = res->start + S3C2410_IISFIFO;
471 s3c24xx_i2s_pcm_stereo_out.filter_data = pdata->dma_playback;
472 s3c24xx_i2s_pcm_stereo_in.addr = res->start + S3C2410_IISFIFO; 463 s3c24xx_i2s_pcm_stereo_in.addr = res->start + S3C2410_IISFIFO;
473 s3c24xx_i2s_pcm_stereo_in.filter_data = pdata->dma_capture;
474 464
475 ret = devm_snd_soc_register_component(&pdev->dev, 465 ret = devm_snd_soc_register_component(&pdev->dev,
476 &s3c24xx_i2s_component, &s3c24xx_i2s_dai, 1); 466 &s3c24xx_i2s_component, &s3c24xx_i2s_dai, 1);
@@ -479,8 +469,7 @@ static int s3c24xx_iis_dev_probe(struct platform_device *pdev)
479 return ret; 469 return ret;
480 } 470 }
481 471
482 ret = samsung_asoc_dma_platform_register(&pdev->dev, 472 ret = samsung_asoc_dma_platform_register(&pdev->dev, NULL,
483 pdata->dma_filter,
484 NULL, NULL); 473 NULL, NULL);
485 if (ret) 474 if (ret)
486 pr_err("failed to register the dma: %d\n", ret); 475 pr_err("failed to register the dma: %d\n", ret);