xref: /linux/arch/arm64/kvm/hyp/include/nvhe/clock.h (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1*405df5b5SVincent Donnefort /* SPDX-License-Identifier: GPL-2.0 */
2*405df5b5SVincent Donnefort #ifndef __ARM64_KVM_HYP_NVHE_CLOCK_H
3*405df5b5SVincent Donnefort #define __ARM64_KVM_HYP_NVHE_CLOCK_H
4*405df5b5SVincent Donnefort #include <linux/types.h>
5*405df5b5SVincent Donnefort 
6*405df5b5SVincent Donnefort #include <asm/kvm_hyp.h>
7*405df5b5SVincent Donnefort 
8*405df5b5SVincent Donnefort #ifdef CONFIG_NVHE_EL2_TRACING
9*405df5b5SVincent Donnefort void trace_clock_update(u32 mult, u32 shift, u64 epoch_ns, u64 epoch_cyc);
10*405df5b5SVincent Donnefort u64 trace_clock(void);
11*405df5b5SVincent Donnefort #else
12*405df5b5SVincent Donnefort static inline void
13*405df5b5SVincent Donnefort trace_clock_update(u32 mult, u32 shift, u64 epoch_ns, u64 epoch_cyc) { }
14*405df5b5SVincent Donnefort static inline u64 trace_clock(void) { return 0; }
15*405df5b5SVincent Donnefort #endif
16*405df5b5SVincent Donnefort #endif
17