ARM: 7451/1: arch timer: implement read_current_timer and get_cycles
commit923df96b9f31b7d08d8438ff9677326d9537accf
authorWill Deacon <will.deacon@arm.com>
Fri, 6 Jul 2012 14:46:45 +0000 (6 15:46 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 9 Jul 2012 16:42:23 +0000 (9 17:42 +0100)
tree3df937a0431a2ae0500ae011f5742a28611490fa
parentf8f5701bdaf9134b1f90e5044a82c66324d2073f
ARM: 7451/1: arch timer: implement read_current_timer and get_cycles

This patch implements read_current_timer using the architected timers
when they are selected via CONFIG_ARM_ARCH_TIMER. If they are detected
not to be usable at runtime, we return -ENXIO to the caller.

Furthermore, if read_current_timer is exported then we can implement
get_cycles in terms of it for use as both an entropy source and for
implementing __udelay and friends.

Tested-by: Shinya Kuribayashi <shinya.kuribayashi.px@renesas.com>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/arch_timer.h
arch/arm/include/asm/timex.h
arch/arm/kernel/arch_timer.c