ASoC: codecs: lpass: register mclk after runtime pm
[sfrench/cifs-2.6.git] / sound / soc / codecs / lpass-va-macro.c
index b0b6cf29cba30ce32d38557ab27a5df14b490b41..1623ba78ddb3d4918586243d6108576a0bf36f1d 100644 (file)
@@ -1524,16 +1524,6 @@ static int va_macro_probe(struct platform_device *pdev)
        if (ret)
                goto err_mclk;
 
-       ret = va_macro_register_fsgen_output(va);
-       if (ret)
-               goto err_clkout;
-
-       va->fsgen = clk_hw_get_clk(&va->hw, "fsgen");
-       if (IS_ERR(va->fsgen)) {
-               ret = PTR_ERR(va->fsgen);
-               goto err_clkout;
-       }
-
        if (va->has_swr_master) {
                /* Set default CLK div to 1 */
                regmap_update_bits(va->regmap, CDC_VA_TOP_CSR_SWR_MIC_CTL0,
@@ -1560,6 +1550,16 @@ static int va_macro_probe(struct platform_device *pdev)
        pm_runtime_set_active(dev);
        pm_runtime_enable(dev);
 
+       ret = va_macro_register_fsgen_output(va);
+       if (ret)
+               goto err_clkout;
+
+       va->fsgen = clk_hw_get_clk(&va->hw, "fsgen");
+       if (IS_ERR(va->fsgen)) {
+               ret = PTR_ERR(va->fsgen);
+               goto err_clkout;
+       }
+
        return 0;
 
 err_clkout: