]> Pileus Git - ~andy/linux/blobdiff - sound/soc/s3c24xx/s3c-i2s-v2.c
ASoC: Fix boot warnings from S3C IISv2
[~andy/linux] / sound / soc / s3c24xx / s3c-i2s-v2.c
index 54f4119e609802f2eff83f9deb73a23253f3d82c..34142c8592252ffcd29205dc748a37bcd3c6f1c3 100644 (file)
@@ -573,6 +573,7 @@ int s3c_i2sv2_probe(struct platform_device *pdev,
                    unsigned long base)
 {
        struct device *dev = &pdev->dev;
+       unsigned int iismod;
 
        i2s->dev = dev;
 
@@ -594,12 +595,16 @@ int s3c_i2sv2_probe(struct platform_device *pdev,
 
        clk_enable(i2s->iis_pclk);
 
+       /* Mark ourselves as in TXRX mode so we can run through our cleanup
+        * process without warnings. */
+       iismod = readl(i2s->regs + S3C2412_IISMOD);
+       iismod |= S3C2412_IISMOD_MODE_TXRX;
+       writel(iismod, i2s->regs + S3C2412_IISMOD);
        s3c2412_snd_txctrl(i2s, 0);
        s3c2412_snd_rxctrl(i2s, 0);
 
        return 0;
 }
-
 EXPORT_SYMBOL_GPL(s3c_i2sv2_probe);
 
 #ifdef CONFIG_PM