diff options
author | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2016-10-25 11:08:40 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-10-25 15:26:06 -0400 |
commit | b57a089bd4213b5e33007f8293bf83a8b14e4729 (patch) | |
tree | 6577f4c9ebfb04fe67edf6adbf95996b3e0ec256 | |
parent | a0a594369c8fc09786bb14772207303e70ccca9a (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.c | 15 |
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 | |||
35 | static struct snd_dmaengine_dai_dma_data s3c24xx_i2s_pcm_stereo_out = { | 33 | static 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 | ||
450 | static int s3c24xx_iis_dev_probe(struct platform_device *pdev) | 448 | static 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); |