summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-versatile
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2010-12-15 22:56:47 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-12-22 23:44:50 +0100
commit1da0c89c66753860ccfe81eb327c25db46c2a24a (patch)
tree565710dc2a57dca18a17d3e34465485f32191b81 /arch/arm/mach-versatile
parentARM: orion: convert sched_clock() to use new infrastructure (diff)
downloadlinux-1da0c89c66753860ccfe81eb327c25db46c2a24a.tar.xz
linux-1da0c89c66753860ccfe81eb327c25db46c2a24a.zip
ARM: versatile: convert sched_clock() to use new infrastructure
Convert versatile platforms to use the new sched_clock() infrastructure for extending 32bit counters to full 64-bit nanoseconds. Tested-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-versatile')
-rw-r--r--arch/arm/mach-versatile/core.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c
index e38acb0f89c8..56cdc2257424 100644
--- a/arch/arm/mach-versatile/core.c
+++ b/arch/arm/mach-versatile/core.c
@@ -51,6 +51,8 @@
#include <mach/platform.h>
#include <plat/timer-sp.h>
+#include <plat/sched_clock.h>
+
#include "core.h"
/*
@@ -886,6 +888,12 @@ void __init versatile_init(void)
}
/*
+ * The sched_clock counter
+ */
+#define REFCOUNTER (__io_address(VERSATILE_SYS_BASE) + \
+ VERSATILE_SYS_24MHz_OFFSET)
+
+/*
* Where is the timer (VA)?
*/
#define TIMER0_VA_BASE __io_address(VERSATILE_TIMER0_1_BASE)
@@ -900,6 +908,8 @@ static void __init versatile_timer_init(void)
{
u32 val;
+ versatile_sched_clock_init(REFCOUNTER, 24000000);
+
/*
* set clock frequency:
* VERSATILE_REFCLK is 32KHz