• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (c) 2021, The Linux Foundation. All rights reserved.
4  * Copyright (c) 2023, Unisoc (Shanghai) Technologies Co., Ltd
5  */
6 
7 #ifndef _ANDROID_DEBUG_SYMBOLS_H
8 #define _ANDROID_DEBUG_SYMBOLS_H
9 
10 enum android_debug_symbol {
11 	ADS_PER_CPU_START = 0,
12 	ADS_PER_CPU_END,
13 	ADS_TEXT,
14 	ADS_SEND,
15 	ADS_MEM_BLOCK,
16 	ADS_INIT_MM,
17 	ADS_ITERATE_SUPERS,
18 	ADS_DROP_SLAB,
19 	ADS_FREE_PAGES,
20 	ADS_COMPACT_PAGES,
21 	ADS_SHOW_MEM, /* for debugging memory usage */
22 	ADS_TOTAL_CMA, /* for debugging total cma pages */
23 	ADS_SLAB_CACHES, /* for debugging slab */
24 	ADS_SLAB_MUTEX, /* for debugging slab */
25 	ADS_END
26 };
27 
28 enum android_debug_per_cpu_symbol {
29 	ADS_IRQ_STACK_PTR = 0,
30 	ADS_DEBUG_PER_CPU_END
31 };
32 
33 #ifdef CONFIG_ANDROID_DEBUG_SYMBOLS
34 
35 void *android_debug_symbol(enum android_debug_symbol symbol);
36 void *android_debug_per_cpu_symbol(enum android_debug_per_cpu_symbol symbol);
37 
38 #else /* !CONFIG_ANDROID_DEBUG_SYMBOLS */
39 
android_debug_symbol(enum android_debug_symbol symbol)40 static inline void *android_debug_symbol(enum android_debug_symbol symbol)
41 {
42 	return NULL;
43 }
android_debug_per_cpu_symbol(enum android_debug_per_cpu_symbol symbol)44 static inline void *android_debug_per_cpu_symbol(enum android_debug_per_cpu_symbol symbol)
45 {
46 	return NULL;
47 }
48 
49 #endif /* CONFIG_ANDROID_DEBUG_SYMBOLS */
50 
51 #endif /* _ANDROID_DEBUG_SYMBOLS_H */
52