ASoC: msm: Migrate audio drivers to new clock apis.

Use the split clock APIs to do low latency actions (enable/disable)
frequently.  Use the high latency functions (prepare/unprepare)
sparingly to help performance.
Using these split apis instead of the 2 current APIs, allows the
clock driver to perform the slow steps with a mutex lock held and
removes the need to busy wait for the slow steps to finish.

Change-Id: Ic5b89183e86e788397be50d7b6f1d798c13ff417
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
diff --git a/sound/soc/msm/apq8064.c b/sound/soc/msm/apq8064.c
index 3d489ff..392e05d 100644
--- a/sound/soc/msm/apq8064.c
+++ b/sound/soc/msm/apq8064.c
@@ -343,7 +343,7 @@
 
 		if (codec_clk) {
 			clk_set_rate(codec_clk, TABLA_EXT_CLK_RATE);
-			clk_enable(codec_clk);
+			clk_prepare_enable(codec_clk);
 			tabla_mclk_enable(codec, 1, dapm);
 		} else {
 			pr_err("%s: Error setting Tabla MCLK\n", __func__);
@@ -359,7 +359,7 @@
 			pr_debug("%s: disabling MCLK. clk_users = %d\n",
 					 __func__, clk_users);
 			tabla_mclk_enable(codec, 0, dapm);
-			clk_disable(codec_clk);
+			clk_disable_unprepare(codec_clk);
 		}
 	}
 	return 0;
@@ -381,7 +381,7 @@
 
 		if (codec_clk) {
 			clk_set_rate(codec_clk, 12288000);
-			clk_enable(codec_clk);
+			clk_prepare_enable(codec_clk);
 			tabla_mclk_enable(w->codec, 1, true);
 
 		} else {
@@ -404,7 +404,7 @@
 					__func__, clk_users);
 
 			tabla_mclk_enable(w->codec, 0, true);
-			clk_disable(codec_clk);
+			clk_disable_unprepare(codec_clk);
 		}
 		break;
 	}