i2s: add 3288 gate control
authoryj <yangjie@rock-chips.com>
Tue, 1 Apr 2014 09:47:53 +0000 (17:47 +0800)
committeryj <yangjie@rock-chips.com>
Tue, 1 Apr 2014 09:47:53 +0000 (17:47 +0800)
sound/soc/rockchip/rk30_i2s.c

index f2d466cd2231e6e1d076645ff4f47677d42b95c4..dd4a6fa89f5f3d03d8179e33eddb8d89575c2781 100755 (executable)
@@ -59,7 +59,7 @@ struct rk30_i2s_info {
 
        struct clk *i2s_clk;// i2s clk ,is bclk lrck
        struct clk *i2s_mclk;//i2s mclk,rk32xx can different i2s clk.
-
+       struct clk *i2s_hclk;
        struct snd_dmaengine_dai_dma_data capture_dma_data;
        struct snd_dmaengine_dai_dma_data playback_dma_data;
 
@@ -549,6 +549,14 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
        }
 
        rk30_i2s = i2s;
+
+       i2s->i2s_hclk = clk_get(&pdev->dev, "i2s_hclk");
+       if(IS_ERR(i2s->i2s_hclk) ) {
+                dev_err(&pdev->dev, "get i2s_hclk failed.\n");
+        } else{
+               clk_prepare_enable(i2s->i2s_hclk);
+       }
+
        i2s->i2s_clk= clk_get(&pdev->dev, "i2s_clk");
        if (IS_ERR(i2s->i2s_clk)) {
                dev_err(&pdev->dev, "Can't retrieve i2s clock\n");