platform: msm8952: correct gpll0 mode address for msm8937.
In msm8937 gpll0 has changed to stromer. Fix the base adddress
and bitmask for the new pll.
Conflicts:
platform/msm8952/include/platform/iomap.h
platform/msm8952/msm8952-clock.c
Change-Id: Iaac4e62b587e559324293c63215e703af173c6a7
diff --git a/platform/msm8952/include/platform/iomap.h b/platform/msm8952/include/platform/iomap.h
index 41f0f83..5a92c58 100644
--- a/platform/msm8952/include/platform/iomap.h
+++ b/platform/msm8952/include/platform/iomap.h
@@ -103,6 +103,7 @@
/* GPLL */
#define GPLL0_STATUS (CLK_CTL_BASE + 0x2101C)
#define GPLL2_STATUS (CLK_CTL_BASE + 0x4A01C)
+#define GPLL0_MODE (CLK_CTL_BASE + 0x21000)
#define APCS_GPLL_ENA_VOTE (CLK_CTL_BASE + 0x45000)
#define APCS_CLOCK_BRANCH_ENA_VOTE (CLK_CTL_BASE + 0x45004)
#define GPLL4_MODE (CLK_CTL_BASE + 0x24000)
diff --git a/platform/msm8952/msm8952-clock.c b/platform/msm8952/msm8952-clock.c
index 3214895..df6b056 100644
--- a/platform/msm8952/msm8952-clock.c
+++ b/platform/msm8952/msm8952-clock.c
@@ -630,6 +630,12 @@
sdcc1_apps_clk_src.freq_tbl = ftbl_gcc_sdcc1_apps_clk_8976_v_1_1;
}
+void msm8937_clock_override()
+{
+ gpll0_clk_src.status_reg = (void *)GPLL0_MODE;
+ gpll0_clk_src.status_mask = BIT(30);
+}
+
void platform_clock_init(void)
{
if (platform_is_msm8956()) {
@@ -638,5 +644,9 @@
/*freq and GPLL change for 8976 v1.1 */
msm8976_v_1_1_sdcc_clock_modify();
}
+
+ if (platform_is_msm8937())
+ msm8937_clock_override();
+
clk_init(msm_clocks_8952, ARRAY_SIZE(msm_clocks_8952));
}