From 129d896f5b1fba8d358ea22c08347e5a090661b3 Mon Sep 17 00:00:00 2001 From: Rob Herring Date: Mon, 1 Apr 2013 13:53:38 -0500 Subject: [PATCH] --- yaml --- r: 374186 b: refs/heads/master c: 7e48c0b9d9ab07c92cd26f167010cd5a50eb0cec h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/include/asm/sched_clock.h | 2 ++ trunk/arch/arm/kernel/sched_clock.c | 9 ++++++++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 3892d17cb86c..1dd761d3baa0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c115739da801ea1ea20c48e2991ce6761496bef1 +refs/heads/master: 7e48c0b9d9ab07c92cd26f167010cd5a50eb0cec diff --git a/trunk/arch/arm/include/asm/sched_clock.h b/trunk/arch/arm/include/asm/sched_clock.h index e3f757263438..3d520ddca61b 100644 --- a/trunk/arch/arm/include/asm/sched_clock.h +++ b/trunk/arch/arm/include/asm/sched_clock.h @@ -11,4 +11,6 @@ extern void sched_clock_postinit(void); extern void setup_sched_clock(u32 (*read)(void), int bits, unsigned long rate); +extern unsigned long long (*sched_clock_func)(void); + #endif diff --git a/trunk/arch/arm/kernel/sched_clock.c b/trunk/arch/arm/kernel/sched_clock.c index 040168e8a60d..880584852fca 100644 --- a/trunk/arch/arm/kernel/sched_clock.c +++ b/trunk/arch/arm/kernel/sched_clock.c @@ -165,12 +165,19 @@ void __init setup_sched_clock(u32 (*read)(void), int bits, unsigned long rate) pr_debug("Registered %pF as sched_clock source\n", read); } -unsigned long long notrace sched_clock(void) +static unsigned long long notrace sched_clock_32(void) { u32 cyc = read_sched_clock(); return cyc_to_sched_clock(cyc, sched_clock_mask); } +unsigned long long __read_mostly (*sched_clock_func)(void) = sched_clock_32; + +unsigned long long notrace sched_clock(void) +{ + return sched_clock_func(); +} + void __init sched_clock_postinit(void) { /*