summaryrefslogtreecommitdiff
path: root/arch/arm/include
diff options
context:
space:
mode:
authorNeil Gabriel <ngabriel@nvidia.com>2014-06-11 13:46:13 -0500
committerEmad Mir <emir@nvidia.com>2014-06-30 11:16:45 -0700
commit2c5b4fdd7b2887adbab8b28a22e07eaae9110cbc (patch)
treeabb64d44f495fb6645274e14fbbec36bb8c67f59 /arch/arm/include
parentd5ed35df2f214de0b304f3a92a8ec84d57edd973 (diff)
ARM: arch_timer: Enable PL0 access to the CNTVCT
Enable usermode access to the generic virtual counter. Change-Id: I935b73b74fd1eefb7ec7b6de07700d215ff20b87 Signed-off-by: Neil Gabriel <ngabriel@nvidia.com> Reviewed-on: http://git-master/r/422310 Reviewed-by: Sobby Thakalath <sthakalath@nvidia.com> Tested-by: Andrey Trachenko <atrachenko@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'arch/arm/include')
-rw-r--r--arch/arm/include/asm/arch_timer.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm/include/asm/arch_timer.h b/arch/arm/include/asm/arch_timer.h
index c78c4cbd329e..d138aaed8382 100644
--- a/arch/arm/include/asm/arch_timer.h
+++ b/arch/arm/include/asm/arch_timer.h
@@ -93,14 +93,16 @@ static inline void __cpuinit arch_counter_set_user_access(void)
asm volatile("mrc p15, 0, %0, c14, c1, 0" : "=r" (cntkctl));
- /* Disable user access to both physical/virtual counters/timers */
+ /* Disable user access to the timers and the physical counter */
/* Also disable virtual event stream */
cntkctl &= ~(ARCH_TIMER_USR_PT_ACCESS_EN
| ARCH_TIMER_USR_VT_ACCESS_EN
| ARCH_TIMER_VIRT_EVT_EN
- | ARCH_TIMER_USR_VCT_ACCESS_EN
| ARCH_TIMER_USR_PCT_ACCESS_EN);
+ /* Enable user access to the virtual counter */
+ cntkctl |= ARCH_TIMER_USR_VCT_ACCESS_EN;
+
asm volatile("mcr p15, 0, %0, c14, c1, 0" : : "r" (cntkctl));
}
#endif