msm: acpuclock-9615: Prepare PLLs during init

The new clk_prepare()/clk_unprepare() APIs need to be called from
non-atomic context. Since acpuclock is used in such places as
suspend/resume which is always in atomic context we must prepare
the PLLs during init or risk the chance of enabling a PLL that
isn't prepared.

Change-Id: I3106b1ab38ec1eb0f2133878dc03d1a1a3e8b85d
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
diff --git a/arch/arm/mach-msm/acpuclock-9615.c b/arch/arm/mach-msm/acpuclock-9615.c
index 35eb52b..8882f41 100644
--- a/arch/arm/mach-msm/acpuclock-9615.c
+++ b/arch/arm/mach-msm/acpuclock-9615.c
@@ -323,6 +323,11 @@
 		if (clocks[i].name) {
 			clocks[i].clk = clk_get_sys("acpu", clocks[i].name);
 			BUG_ON(IS_ERR(clocks[i].clk));
+			/*
+			 * Prepare the PLLs because we enable/disable them
+			 * in atomic context during power collapse/restore.
+			 */
+			BUG_ON(clk_prepare(clocks[i].clk));
 		}
 	}