1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#ifndef __HMM_BO_COMMON_H__
22#define __HMM_BO_COMMON_H__
23
24#define HMM_BO_NAME "HMM"
25
26
27
28
29#define var_equal_return(var1, var2, exp, fmt, arg ...) \
30 do { \
31 if ((var1) == (var2)) { \
32 dev_err(atomisp_dev, \
33 fmt, ## arg); \
34 return exp;\
35 } \
36 } while (0)
37
38#define var_equal_return_void(var1, var2, fmt, arg ...) \
39 do { \
40 if ((var1) == (var2)) { \
41 dev_err(atomisp_dev, \
42 fmt, ## arg); \
43 return;\
44 } \
45 } while (0)
46
47#define var_equal_goto(var1, var2, label, fmt, arg ...) \
48 do { \
49 if ((var1) == (var2)) { \
50 dev_err(atomisp_dev, \
51 fmt, ## arg); \
52 goto label;\
53 } \
54 } while (0)
55
56#define var_not_equal_goto(var1, var2, label, fmt, arg ...) \
57 do { \
58 if ((var1) != (var2)) { \
59 dev_err(atomisp_dev, \
60 fmt, ## arg); \
61 goto label;\
62 } \
63 } while (0)
64
65#define check_null_return(ptr, exp, fmt, arg ...) \
66 var_equal_return(ptr, NULL, exp, fmt, ## arg)
67
68#define check_null_return_void(ptr, fmt, arg ...) \
69 var_equal_return_void(ptr, NULL, fmt, ## arg)
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85struct _hmm_mem_stat {
86 int res_size;
87 int sys_size;
88 int dyc_size;
89 int dyc_thr;
90 int usr_size;
91 int res_cnt;
92 int tol_cnt;
93};
94
95extern struct _hmm_mem_stat hmm_mem_stat;
96
97#endif
98