diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-13 22:26:28 +0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-15 17:51:11 +0400 |
commit | eaae183f4b3f25522cd13ebf30162c1cb863b1f1 (patch) | |
tree | 3bbfb55efb15ea827ff6c441f3e9eb5e3d0061e4 /sound/soc/s3c24xx | |
parent | f5d1e5ed58dc0178e1678db63156772999379d49 (diff) | |
download | linux-eaae183f4b3f25522cd13ebf30162c1cb863b1f1.tar.xz |
ASoC: Add a bit of resource unwinding in the S3C IISv4 driver
There's much more needed but this'll get us started.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'sound/soc/s3c24xx')
-rw-r--r-- | sound/soc/s3c24xx/s3c64xx-i2s-v4.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/s3c24xx/s3c64xx-i2s-v4.c b/sound/soc/s3c24xx/s3c64xx-i2s-v4.c index a13415a85a45..a9628472ebfe 100644 --- a/sound/soc/s3c24xx/s3c64xx-i2s-v4.c +++ b/sound/soc/s3c24xx/s3c64xx-i2s-v4.c @@ -187,7 +187,18 @@ err: static __devexit int s3c64xx_i2sv4_dev_remove(struct platform_device *pdev) { + struct s3c_i2sv2_info *i2s = &s3c64xx_i2sv4; + struct resource *res; + snd_soc_unregister_dai(&pdev->dev); + clk_put(i2s->iis_cclk); + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (res) + release_mem_region(res->start, resource_size(res)); + else + dev_warn(&pdev->dev, "Unable to get I2S SFR address\n"); + return 0; } |