xref: /rk3399_ARM-atf/include/lib/extensions/sys_reg_trace.h (revision 60d330dc4d26eb5509044572d5c163b26501a0de)
1d4582d30SManish V Badarkhe /*
2*60d330dcSBoyan Karatotev  * Copyright (c) 2021-2023, Arm Limited. All rights reserved.
3d4582d30SManish V Badarkhe  *
4d4582d30SManish V Badarkhe  * SPDX-License-Identifier: BSD-3-Clause
5d4582d30SManish V Badarkhe  */
6d4582d30SManish V Badarkhe 
7d4582d30SManish V Badarkhe #ifndef SYS_REG_TRACE_H
8d4582d30SManish V Badarkhe #define SYS_REG_TRACE_H
9d4582d30SManish V Badarkhe 
10d4582d30SManish V Badarkhe #include <context.h>
11d4582d30SManish V Badarkhe 
12603a0c6fSAndre Przywara #if ENABLE_SYS_REG_TRACE_FOR_NS
13*60d330dcSBoyan Karatotev 
14d4582d30SManish V Badarkhe #if __aarch64__
15d4582d30SManish V Badarkhe void sys_reg_trace_enable(cpu_context_t *context);
16*60d330dcSBoyan Karatotev void sys_reg_trace_init_el2_unused(void);
17d4582d30SManish V Badarkhe #else
18*60d330dcSBoyan Karatotev void sys_reg_trace_init_el3(void);
19d4582d30SManish V Badarkhe #endif /* __aarch64__ */
20d4582d30SManish V Badarkhe 
21603a0c6fSAndre Przywara #else /* !ENABLE_SYS_REG_TRACE_FOR_NS */
22603a0c6fSAndre Przywara 
23603a0c6fSAndre Przywara #if __aarch64__
24603a0c6fSAndre Przywara static inline void sys_reg_trace_enable(cpu_context_t *context)
25603a0c6fSAndre Przywara {
26603a0c6fSAndre Przywara }
27*60d330dcSBoyan Karatotev static inline void sys_reg_trace_disable(cpu_context_t *context)
28*60d330dcSBoyan Karatotev {
29*60d330dcSBoyan Karatotev }
30*60d330dcSBoyan Karatotev static inline void sys_reg_trace_init_el2_unused(void)
31*60d330dcSBoyan Karatotev {
32*60d330dcSBoyan Karatotev }
33603a0c6fSAndre Przywara #else
34*60d330dcSBoyan Karatotev static inline void sys_reg_trace_init_el3(void)
35603a0c6fSAndre Przywara {
36603a0c6fSAndre Przywara }
37603a0c6fSAndre Przywara #endif /* __aarch64__ */
38*60d330dcSBoyan Karatotev 
39603a0c6fSAndre Przywara #endif /* ENABLE_SYS_REG_TRACE_FOR_NS */
40603a0c6fSAndre Przywara 
41d4582d30SManish V Badarkhe #endif /* SYS_REG_TRACE_H */
42