From: Jassi Brar <jassi.brar@xxxxxxxxxxx> Instead of having I2Sv2 core to figure out the base address of I2Sv3 controller pass the address directly. Signed-off-by: Jassi Brar <jassi.brar@xxxxxxxxxxx> --- sound/soc/s3c24xx/s3c64xx-i2s.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/sound/soc/s3c24xx/s3c64xx-i2s.c b/sound/soc/s3c24xx/s3c64xx-i2s.c index 751a1b6..9cf62c2 100644 --- a/sound/soc/s3c24xx/s3c64xx-i2s.c +++ b/sound/soc/s3c24xx/s3c64xx-i2s.c @@ -166,6 +166,13 @@ static __devinit int s3c64xx_iis_dev_probe(struct platform_device *pdev) dev_err(&pdev->dev, "Unable to get I2S SFR address\n"); return -ENXIO; } + + if (!request_mem_region(res->start, resource_size(res), + "s3c64xx-i2s")) { + dev_err(&pdev->dev, "Unable to request SFR region\n"); + return -EBUSY; + } + i2s->dma_capture->dma_addr = res->start + S3C2412_IISRXD; i2s->dma_playback->dma_addr = res->start + S3C2412_IISTXD; @@ -191,7 +198,8 @@ static __devinit int s3c64xx_iis_dev_probe(struct platform_device *pdev) clk_enable(i2s->iis_cclk); - ret = s3c_i2sv2_probe(pdev, dai, i2s, 0); + ret = s3c_i2sv2_probe(pdev, dai, i2s, + i2s->dma_playback->dma_addr - S3C2412_IISTXD); if (ret) goto err_clk; -- 1.6.2.5 _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel