msm: cleanup timer code
Moves platform dependent code to platform dirs.
Change-Id: I003d40d807932643a1c1c75f6199b972c89eb4c5
diff --git a/platform/msm8x60/platform.c b/platform/msm8x60/platform.c
index 04bc894..cc17781 100644
--- a/platform/msm8x60/platform.c
+++ b/platform/msm8x60/platform.c
@@ -44,6 +44,8 @@
#include <mmu.h>
#include <arch/arm/mmu.h>
+static uint32_t ticks_per_sec = 0;
+
#define MB (1024*1024)
@@ -228,3 +230,23 @@
display_shutdown();
#endif
}
+
+/* Initialize DGT timer */
+void platform_init_timer(void)
+{
+ /* disable timer */
+ writel(0, DGT_ENABLE);
+
+ /* DGT uses LPXO source which is 27MHz.
+ * Set clock divider to 4.
+ */
+ writel(3, DGT_CLK_CTL);
+
+ ticks_per_sec = 6750000; /* (27 MHz / 4) */
+}
+
+/* Returns timer ticks per sec */
+uint32_t platform_tick_rate(void)
+{
+ return ticks_per_sec;
+}