923df96b9f
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>
22 lines
384 B
C
22 lines
384 B
C
#ifndef __ASMARM_ARCH_TIMER_H
|
|
#define __ASMARM_ARCH_TIMER_H
|
|
|
|
#include <asm/errno.h>
|
|
|
|
#ifdef CONFIG_ARM_ARCH_TIMER
|
|
#define ARCH_HAS_READ_CURRENT_TIMER
|
|
int arch_timer_of_register(void);
|
|
int arch_timer_sched_clock_init(void);
|
|
#else
|
|
static inline int arch_timer_of_register(void)
|
|
{
|
|
return -ENXIO;
|
|
}
|
|
|
|
static inline int arch_timer_sched_clock_init(void)
|
|
{
|
|
return -ENXIO;
|
|
}
|
|
#endif
|
|
|
|
#endif
|