diff options
Diffstat (limited to 'arch/arm/include/asm/arch_timer.h')
| -rw-r--r-- | arch/arm/include/asm/arch_timer.h | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch_timer.h b/arch/arm/include/asm/arch_timer.h index 75975d9efd3..729f6d98df8 100644 --- a/arch/arm/include/asm/arch_timer.h +++ b/arch/arm/include/asm/arch_timer.h @@ -106,6 +106,18 @@ static inline u64 arch_counter_get_cntvct(void)  	asm volatile("mrrc p15, 1, %Q0, %R0, c14" : "=r" (cval));  	return cval;  } + +static inline void __cpuinit arch_counter_set_user_access(void) +{ +	u32 cntkctl; + +	asm volatile("mrc p15, 0, %0, c14, c1, 0" : "=r" (cntkctl)); + +	/* disable user access to everything */ +	cntkctl &= ~((3 << 8) | (7 << 0)); + +	asm volatile("mcr p15, 0, %0, c14, c1, 0" : : "r" (cntkctl)); +}  #else  static inline int arch_timer_of_register(void)  {  |