aboutsummaryrefslogtreecommitdiff
path: root/core/arch/arm32/include/arm32.h
diff options
context:
space:
mode:
authorJens Wiklander <jens.wiklander@linaro.org>2015-02-02 10:51:13 +0100
committerJens Wiklander <jens.wiklander@linaro.org>2015-02-26 07:36:49 +0100
commit7eaee2d7837a4565fd745cd0993c9c67608a6c13 (patch)
treef9fec411fcc74558fd56972c830a5acde64b2017 /core/arch/arm32/include/arm32.h
parentca50fe049a98232d72863dab470590f3fc7c54f7 (diff)
arm32: move some inline assembly into arm32.h
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Pascal Brand <pascal.brand@linaro.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
Diffstat (limited to 'core/arch/arm32/include/arm32.h')
-rw-r--r--core/arch/arm32/include/arm32.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/core/arch/arm32/include/arm32.h b/core/arch/arm32/include/arm32.h
index 1a37373..d6a12ac 100644
--- a/core/arch/arm32/include/arm32.h
+++ b/core/arch/arm32/include/arm32.h
@@ -491,6 +491,21 @@ static inline void write_nsacr(uint32_t nsacr)
);
}
+static inline uint64_t read_cntpct(void)
+{
+ uint64_t val;
+
+ asm volatile("mrrc p15, 0, %Q0, %R0, c14" : "=r" (val));
+ return val;
+}
+
+static inline uint32_t read_cntfrq(void)
+{
+ uint32_t frq;
+
+ asm volatile("mrc p15, 0, %0, c14, c0, 0" : "=r" (frq));
+ return frq;
+}
#endif /*ASM*/
#endif /*ARM32_H*/