From: 黄涛 Date: Tue, 22 Jan 2013 03:30:13 +0000 (+0800) Subject: rk_timer: support sched_clock X-Git-Tag: firefly_0821_release~7869 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=d00b3197688e89b12ec3b8f601f8bae8974854f4;p=firefly-linux-kernel-4.4.55.git rk_timer: support sched_clock --- diff --git a/arch/arm/plat-rk/rk_timer.c b/arch/arm/plat-rk/rk_timer.c index 24dc1b508ce8..51e5e5934b8d 100644 --- a/arch/arm/plat-rk/rk_timer.c +++ b/arch/arm/plat-rk/rk_timer.c @@ -282,3 +282,18 @@ int local_timer_ack(void) return 0; } #endif + +/* + * Scheduler clock - returns current time in nanosec units. + */ +unsigned long long notrace sched_clock(void) +{ + const struct clocksource *cs = &rk_timer_clocksource; + cycle_t cyc; + + if (!timer.cs_base) + return 0; + + cyc = ~rk_timer_read_current_value(timer.cs_base); + return clocksource_cyc2ns(cyc, cs->mult, cs->shift); +}