OSDN Git Service

Merge "ARM: dts: msm: remove CARVEOUT ION for msm8996 ivi multi-gvm vplatform"
[sagit-ice-cold/kernel_xiaomi_msm8998.git] / include / linux / diagchar.h
1 /* Copyright (c) 2008-2019, The Linux Foundation. All rights reserved.
2  *
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License version 2 and
5  * only version 2 as published by the Free Software Foundation.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
11  */
12
13 #ifndef DIAGCHAR_SHARED
14 #define DIAGCHAR_SHARED
15
16 #define MSG_MASKS_TYPE          0x00000001
17 #define LOG_MASKS_TYPE          0x00000002
18 #define EVENT_MASKS_TYPE        0x00000004
19 #define PKT_TYPE                0x00000008
20 #define DEINIT_TYPE             0x00000010
21 #define USER_SPACE_DATA_TYPE    0x00000020
22 #define DCI_DATA_TYPE           0x00000040
23 #define USER_SPACE_RAW_DATA_TYPE        0x00000080
24 #define DCI_LOG_MASKS_TYPE      0x00000100
25 #define DCI_EVENT_MASKS_TYPE    0x00000200
26 #define DCI_PKT_TYPE            0x00000400
27 #define HDLC_SUPPORT_TYPE       0x00001000
28
29 #define USB_MODE                        1
30 #define MEMORY_DEVICE_MODE              2
31 #define NO_LOGGING_MODE                 3
32 #define UART_MODE                       4
33 #define SOCKET_MODE                     5
34 #define CALLBACK_MODE                   6
35
36 /* different values that go in for diag_data_type */
37
38 #define DATA_TYPE_EVENT                 0
39 #define DATA_TYPE_F3                    1
40 #define DATA_TYPE_LOG                   2
41 #define DATA_TYPE_RESPONSE              3
42 #define DATA_TYPE_DELAYED_RESPONSE      4
43 #define DATA_TYPE_DCI_LOG               0x00000100
44 #define DATA_TYPE_DCI_EVENT             0x00000200
45
46 /* Different IOCTL values */
47 #define DIAG_IOCTL_COMMAND_REG          0
48 #define DIAG_IOCTL_COMMAND_DEREG        1
49 #define DIAG_IOCTL_SWITCH_LOGGING       7
50 #define DIAG_IOCTL_GET_DELAYED_RSP_ID   8
51 #define DIAG_IOCTL_LSM_DEINIT           9
52 #define DIAG_IOCTL_DCI_INIT             20
53 #define DIAG_IOCTL_DCI_DEINIT           21
54 #define DIAG_IOCTL_DCI_SUPPORT          22
55 #define DIAG_IOCTL_DCI_REG              23
56 #define DIAG_IOCTL_DCI_STREAM_INIT      24
57 #define DIAG_IOCTL_DCI_HEALTH_STATS     25
58 #define DIAG_IOCTL_DCI_LOG_STATUS       26
59 #define DIAG_IOCTL_DCI_EVENT_STATUS     27
60 #define DIAG_IOCTL_DCI_CLEAR_LOGS       28
61 #define DIAG_IOCTL_DCI_CLEAR_EVENTS     29
62 #define DIAG_IOCTL_REMOTE_DEV           32
63 #define DIAG_IOCTL_VOTE_REAL_TIME       33
64 #define DIAG_IOCTL_GET_REAL_TIME        34
65 #define DIAG_IOCTL_PERIPHERAL_BUF_CONFIG        35
66 #define DIAG_IOCTL_PERIPHERAL_BUF_DRAIN         36
67 #define DIAG_IOCTL_REGISTER_CALLBACK    37
68 #define DIAG_IOCTL_HDLC_TOGGLE  38
69 #define DIAG_IOCTL_QUERY_PD_LOGGING     39
70
71 /* PC Tools IDs */
72 #define APQ8060_TOOLS_ID        4062
73 #define AO8960_TOOLS_ID         4064
74 #define APQ8064_TOOLS_ID        4072
75 #define MSM8625_TOOLS_ID        4075
76 #define MSM8930_TOOLS_ID        4076
77 #define MSM8630_TOOLS_ID        4077
78 #define MSM8230_TOOLS_ID        4078
79 #define APQ8030_TOOLS_ID        4079
80 #define MSM8627_TOOLS_ID        4080
81 #define MSM8227_TOOLS_ID        4081
82 #define MSM8974_TOOLS_ID        4083
83 #define APQ8074_TOOLS_ID        4090
84 #define MSM8916_TOOLS_ID        4094
85 #define APQ8084_TOOLS_ID        4095
86 #define MSM8994_TOOLS_ID        4097
87 #define MSM8939_TOOLS_ID        4103
88 #define APQ8026_TOOLS_ID        4104
89 #define MSM8909_TOOLS_ID        4108
90 #define MSM8992_TOOLS_ID        4111
91 #define MSM8952_TOOLS_ID        4110
92 #define MSM_8996_TOOLS_ID       4112
93
94 #define MSG_MASK_0                      (0x00000001)
95 #define MSG_MASK_1                      (0x00000002)
96 #define MSG_MASK_2                      (0x00000004)
97 #define MSG_MASK_3                      (0x00000008)
98 #define MSG_MASK_4                      (0x00000010)
99 #define MSG_MASK_5                      (0x00000020)
100 #define MSG_MASK_6                      (0x00000040)
101 #define MSG_MASK_7                      (0x00000080)
102 #define MSG_MASK_8                      (0x00000100)
103 #define MSG_MASK_9                      (0x00000200)
104 #define MSG_MASK_10                     (0x00000400)
105 #define MSG_MASK_11                     (0x00000800)
106 #define MSG_MASK_12                     (0x00001000)
107 #define MSG_MASK_13                     (0x00002000)
108 #define MSG_MASK_14                     (0x00004000)
109 #define MSG_MASK_15                     (0x00008000)
110 #define MSG_MASK_16                     (0x00010000)
111 #define MSG_MASK_17                     (0x00020000)
112 #define MSG_MASK_18                     (0x00040000)
113 #define MSG_MASK_19                     (0x00080000)
114 #define MSG_MASK_20                     (0x00100000)
115 #define MSG_MASK_21                     (0x00200000)
116 #define MSG_MASK_22                     (0x00400000)
117 #define MSG_MASK_23                     (0x00800000)
118 #define MSG_MASK_24                     (0x01000000)
119 #define MSG_MASK_25                     (0x02000000)
120 #define MSG_MASK_26                     (0x04000000)
121 #define MSG_MASK_27                     (0x08000000)
122 #define MSG_MASK_28                     (0x10000000)
123 #define MSG_MASK_29                     (0x20000000)
124 #define MSG_MASK_30                     (0x40000000)
125 #define MSG_MASK_31                     (0x80000000)
126
127 /*  These masks are to be used for support of all legacy messages in the sw.
128 The user does not need to remember the names as they will be embedded in
129 the appropriate macros. */
130 #define MSG_LEGACY_LOW                  MSG_MASK_0
131 #define MSG_LEGACY_MED                  MSG_MASK_1
132 #define MSG_LEGACY_HIGH                 MSG_MASK_2
133 #define MSG_LEGACY_ERROR                MSG_MASK_3
134 #define MSG_LEGACY_FATAL                MSG_MASK_4
135
136 /* Legacy Message Priorities */
137 #define MSG_LVL_FATAL                   (MSG_LEGACY_FATAL)
138 #define MSG_LVL_ERROR                   (MSG_LEGACY_ERROR | MSG_LVL_FATAL)
139 #define MSG_LVL_HIGH                    (MSG_LEGACY_HIGH | MSG_LVL_ERROR)
140 #define MSG_LVL_MED                     (MSG_LEGACY_MED | MSG_LVL_HIGH)
141 #define MSG_LVL_LOW                     (MSG_LEGACY_LOW | MSG_LVL_MED)
142
143 #define MSG_LVL_NONE                    0
144
145 /* This needs to be modified manually now, when we add
146  a new RANGE of SSIDs to the msg_mask_tbl */
147 #define MSG_MASK_TBL_CNT                26
148 #define APPS_EVENT_LAST_ID              0xCB7
149
150 #define MSG_SSID_0                      0
151 #define MSG_SSID_0_LAST                 131
152 #define MSG_SSID_1                      500
153 #define MSG_SSID_1_LAST                 506
154 #define MSG_SSID_2                      1000
155 #define MSG_SSID_2_LAST                 1007
156 #define MSG_SSID_3                      2000
157 #define MSG_SSID_3_LAST                 2008
158 #define MSG_SSID_4                      3000
159 #define MSG_SSID_4_LAST                 3014
160 #define MSG_SSID_5                      4000
161 #define MSG_SSID_5_LAST                 4010
162 #define MSG_SSID_6                      4500
163 #define MSG_SSID_6_LAST                 4584
164 #define MSG_SSID_7                      4600
165 #define MSG_SSID_7_LAST                 4616
166 #define MSG_SSID_8                      5000
167 #define MSG_SSID_8_LAST                 5036
168 #define MSG_SSID_9                      5500
169 #define MSG_SSID_9_LAST                 5517
170 #define MSG_SSID_10                     6000
171 #define MSG_SSID_10_LAST                6081
172 #define MSG_SSID_11                     6500
173 #define MSG_SSID_11_LAST                6521
174 #define MSG_SSID_12                     7000
175 #define MSG_SSID_12_LAST                7003
176 #define MSG_SSID_13                     7100
177 #define MSG_SSID_13_LAST                7111
178 #define MSG_SSID_14                     7200
179 #define MSG_SSID_14_LAST                7201
180 #define MSG_SSID_15                     8000
181 #define MSG_SSID_15_LAST                8000
182 #define MSG_SSID_16                     8500
183 #define MSG_SSID_16_LAST                8532
184 #define MSG_SSID_17                     9000
185 #define MSG_SSID_17_LAST                9008
186 #define MSG_SSID_18                     9500
187 #define MSG_SSID_18_LAST                9521
188 #define MSG_SSID_19                     10200
189 #define MSG_SSID_19_LAST                10210
190 #define MSG_SSID_20                     10251
191 #define MSG_SSID_20_LAST                10255
192 #define MSG_SSID_21                     10300
193 #define MSG_SSID_21_LAST                10300
194 #define MSG_SSID_22                     10350
195 #define MSG_SSID_22_LAST                10377
196 #define MSG_SSID_23                     10400
197 #define MSG_SSID_23_LAST                10416
198 #define MSG_SSID_24                     10500
199 #define MSG_SSID_24_LAST                10505
200 #define MSG_SSID_25                     0xC000
201 #define MSG_SSID_25_LAST                0xC063
202
203 static const uint32_t msg_bld_masks_0[] = {
204         MSG_LVL_LOW,
205         MSG_LVL_MED,
206         MSG_LVL_LOW,
207         MSG_LVL_ERROR,
208         MSG_LVL_LOW,
209         MSG_LVL_LOW,
210         MSG_LVL_MED,
211         MSG_LVL_HIGH,
212         MSG_LVL_ERROR,
213         MSG_LVL_LOW,
214         MSG_LVL_LOW,
215         MSG_LVL_ERROR,
216         MSG_LVL_MED,
217         MSG_LVL_MED,
218         MSG_LVL_MED,
219         MSG_LVL_HIGH,
220         MSG_LVL_HIGH,
221         MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
222         MSG_LVL_LOW,
223         MSG_LVL_ERROR,
224         MSG_LVL_LOW,
225         MSG_LVL_MED,
226         MSG_LVL_MED,
227         MSG_LVL_LOW,
228         MSG_LVL_MED,
229         MSG_LVL_LOW,
230         MSG_LVL_MED,
231         MSG_LVL_MED,
232         MSG_LVL_MED,
233         MSG_LVL_MED,
234         MSG_LVL_MED|MSG_MASK_7 | \
235                 MSG_MASK_8|MSG_MASK_9|MSG_MASK_10|MSG_MASK_11|MSG_MASK_12 | \
236                 MSG_MASK_13|MSG_MASK_14|MSG_MASK_15|MSG_MASK_16 | \
237                 MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20|MSG_MASK_21,
238         MSG_LVL_MED|MSG_MASK_5 | \
239                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
240                 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14| \
241                 MSG_MASK_15|MSG_MASK_16|MSG_MASK_17,
242         MSG_LVL_LOW,
243         MSG_LVL_MED,
244         MSG_LVL_HIGH,
245         MSG_LVL_HIGH,
246         MSG_LVL_HIGH,
247         MSG_LVL_HIGH,
248         MSG_LVL_MED,
249         MSG_LVL_MED,
250         MSG_LVL_MED|MSG_MASK_5 | \
251                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8,
252         MSG_LVL_LOW,
253         MSG_LVL_LOW,
254         MSG_LVL_HIGH,
255         MSG_LVL_HIGH,
256         MSG_LVL_HIGH,
257         MSG_LVL_MED,
258         MSG_LVL_MED|MSG_MASK_5 | \
259                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
260                 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
261                 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
262                 MSG_MASK_21|MSG_MASK_22|MSG_MASK_23|MSG_MASK_24|MSG_MASK_25,
263         MSG_LVL_MED|MSG_MASK_5 | \
264                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10,
265         MSG_LVL_MED,
266         MSG_LVL_LOW,
267         MSG_LVL_MED,
268         MSG_LVL_MED,
269         MSG_LVL_LOW,
270         MSG_LVL_LOW,
271         MSG_LVL_LOW,
272         MSG_LVL_HIGH,
273         MSG_LVL_LOW,
274         MSG_LVL_LOW,
275         MSG_LVL_LOW | MSG_MASK_5 | \
276                 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
277         MSG_LVL_LOW | MSG_MASK_5 | \
278                 MSG_MASK_6,
279         MSG_LVL_MED,
280         MSG_LVL_MED,
281         MSG_LVL_LOW,
282         MSG_LVL_MED | MSG_MASK_5 | \
283                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
284                 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15 | \
285                 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20,
286         MSG_LVL_LOW,
287         MSG_LVL_MED,
288         MSG_LVL_LOW,
289         MSG_LVL_LOW,
290         MSG_LVL_LOW,
291         MSG_LVL_HIGH,
292         MSG_LVL_HIGH,
293         MSG_LVL_LOW,
294         MSG_LVL_LOW,
295         MSG_LVL_LOW,
296         MSG_LVL_LOW,
297         MSG_LVL_LOW,
298         MSG_LVL_HIGH | MSG_MASK_21,
299         MSG_LVL_HIGH,
300         MSG_LVL_LOW,
301         MSG_LVL_LOW,
302         MSG_LVL_LOW,
303         MSG_LVL_LOW,
304         MSG_LVL_LOW,
305         MSG_LVL_LOW,
306         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
307         MSG_LVL_LOW,
308         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
309         MSG_LVL_LOW,
310         MSG_LVL_MED,
311         MSG_LVL_LOW,
312         MSG_LVL_LOW,
313         MSG_LVL_LOW,
314         MSG_LVL_LOW,
315         MSG_LVL_LOW,
316         MSG_LVL_LOW,
317         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
318         MSG_LVL_MED,
319         MSG_LVL_HIGH,
320         MSG_LVL_MED,
321         MSG_LVL_HIGH,
322         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
323         MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR,
324         MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR,
325         MSG_LVL_MED|MSG_LVL_HIGH,
326         MSG_LVL_MED|MSG_LVL_HIGH,
327         MSG_LVL_LOW,
328         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
329         MSG_LVL_HIGH,
330         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
331         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
332         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
333         MSG_LVL_LOW,
334         MSG_LVL_MED,
335         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
336         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
337         MSG_LVL_MED,
338         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
339         MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
340         MSG_LVL_MED,
341         MSG_LVL_MED,
342         MSG_LVL_HIGH,
343         MSG_LVL_LOW,
344         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
345                 MSG_LVL_FATAL,
346         MSG_LVL_HIGH,
347         MSG_LVL_LOW,
348         MSG_LVL_MED,
349         MSG_LVL_MED,
350         MSG_LVL_HIGH,
351         MSG_LVL_HIGH,
352         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR
353 };
354
355 static const uint32_t msg_bld_masks_1[] = {
356         MSG_LVL_MED,
357         MSG_LVL_HIGH,
358         MSG_LVL_HIGH,
359         MSG_LVL_LOW,
360         MSG_LVL_HIGH,
361         MSG_LVL_HIGH,
362         MSG_LVL_HIGH
363 };
364
365 static const uint32_t msg_bld_masks_2[] = {
366         MSG_LVL_MED,
367         MSG_LVL_MED,
368         MSG_LVL_MED,
369         MSG_LVL_MED,
370         MSG_LVL_MED,
371         MSG_LVL_MED|MSG_MASK_5,
372         MSG_LVL_MED,
373         MSG_LVL_MED
374 };
375
376 static const uint32_t msg_bld_masks_3[] = {
377         MSG_LVL_MED,
378         MSG_LVL_MED,
379         MSG_LVL_MED,
380         MSG_LVL_MED,
381         MSG_LVL_MED,
382         MSG_LVL_MED|MSG_MASK_5|MSG_MASK_6|MSG_MASK_7|
383                         MSG_MASK_8|MSG_MASK_9|MSG_MASK_10,
384         MSG_LVL_MED,
385         MSG_LVL_MED,
386         MSG_LVL_MED
387 };
388
389 static const uint32_t msg_bld_masks_4[] = {
390         MSG_LVL_HIGH,
391         MSG_LVL_HIGH,
392         MSG_LVL_HIGH,
393         MSG_LVL_HIGH,
394         MSG_LVL_HIGH,
395         MSG_LVL_HIGH,
396         MSG_LVL_HIGH,
397         MSG_LVL_HIGH,
398         MSG_LVL_HIGH,
399         MSG_LVL_HIGH,
400         MSG_LVL_HIGH,
401         MSG_LVL_HIGH,
402         MSG_LVL_HIGH,
403         MSG_LVL_LOW,
404         MSG_LVL_LOW
405 };
406
407 static const uint32_t msg_bld_masks_5[] = {
408         MSG_LVL_HIGH,
409         MSG_LVL_MED,
410         MSG_LVL_HIGH,
411         MSG_LVL_MED,
412         MSG_LVL_MED,
413         MSG_LVL_MED,
414         MSG_LVL_MED,
415         MSG_LVL_MED,
416         MSG_LVL_MED,
417         MSG_LVL_MED|MSG_LVL_MED|MSG_MASK_5|MSG_MASK_6|MSG_MASK_7| \
418                 MSG_MASK_8|MSG_MASK_9,
419         MSG_LVL_MED
420 };
421
422 static const uint32_t msg_bld_masks_6[] = {
423         MSG_LVL_LOW | MSG_MASK_5,
424         MSG_LVL_LOW | MSG_MASK_5,
425         MSG_LVL_LOW | MSG_MASK_5,
426         MSG_LVL_LOW | MSG_MASK_5,
427         MSG_LVL_LOW | MSG_MASK_5,
428         MSG_LVL_LOW | MSG_MASK_5,
429         MSG_LVL_LOW | MSG_MASK_5,
430         MSG_LVL_LOW | MSG_MASK_5,
431         MSG_LVL_LOW | MSG_MASK_5,
432         MSG_LVL_LOW | MSG_MASK_5,
433         MSG_LVL_LOW | MSG_MASK_5,
434         MSG_LVL_LOW | MSG_MASK_5,
435         MSG_LVL_LOW | MSG_MASK_5,
436         MSG_LVL_LOW | MSG_MASK_5,
437         MSG_LVL_LOW | MSG_MASK_5,
438         MSG_LVL_LOW | MSG_MASK_5,
439         MSG_LVL_LOW | MSG_MASK_5,
440         MSG_LVL_LOW | MSG_MASK_5,
441         MSG_LVL_LOW | MSG_MASK_5,
442         MSG_LVL_LOW | MSG_MASK_5,
443         MSG_LVL_LOW | MSG_MASK_5,
444         MSG_LVL_LOW | MSG_MASK_5,
445         MSG_LVL_LOW | MSG_MASK_5,
446         MSG_LVL_LOW | MSG_MASK_5,
447         MSG_LVL_LOW | MSG_MASK_5,
448         MSG_LVL_LOW | MSG_MASK_5,
449         MSG_LVL_LOW | MSG_MASK_5,
450         MSG_LVL_LOW | MSG_MASK_5,
451         MSG_LVL_LOW | MSG_MASK_5,
452         MSG_LVL_LOW | MSG_MASK_5,
453         MSG_LVL_LOW | MSG_MASK_5,
454         MSG_LVL_LOW | MSG_MASK_5,
455         MSG_LVL_LOW | MSG_MASK_5,
456         MSG_LVL_LOW | MSG_MASK_5,
457         MSG_LVL_LOW | MSG_MASK_5,
458         MSG_LVL_LOW | MSG_MASK_5,
459         MSG_LVL_LOW | MSG_MASK_5,
460         MSG_LVL_LOW | MSG_MASK_5,
461         MSG_LVL_LOW | MSG_MASK_5,
462         MSG_LVL_LOW | MSG_MASK_5,
463         MSG_LVL_LOW | MSG_MASK_5,
464         MSG_LVL_LOW | MSG_MASK_5,
465         MSG_LVL_LOW | MSG_MASK_5,
466         MSG_LVL_LOW | MSG_MASK_5,
467         MSG_LVL_LOW | MSG_MASK_5,
468         MSG_LVL_LOW | MSG_MASK_5,
469         MSG_LVL_LOW | MSG_MASK_5,
470         MSG_LVL_LOW | MSG_MASK_5,
471         MSG_LVL_LOW | MSG_MASK_5,
472         MSG_LVL_LOW | MSG_MASK_5,
473         MSG_LVL_LOW | MSG_MASK_5,
474         MSG_LVL_LOW | MSG_MASK_5,
475         MSG_LVL_LOW | MSG_MASK_5,
476         MSG_LVL_LOW | MSG_MASK_5,
477         MSG_LVL_LOW | MSG_MASK_5,
478         MSG_LVL_LOW | MSG_MASK_5,
479         MSG_LVL_LOW | MSG_MASK_5,
480         MSG_LVL_LOW | MSG_MASK_5,
481         MSG_LVL_LOW | MSG_MASK_5,
482         MSG_LVL_LOW | MSG_MASK_5,
483         MSG_LVL_LOW | MSG_MASK_5,
484         MSG_LVL_LOW | MSG_MASK_5,
485         MSG_LVL_LOW | MSG_MASK_5,
486         MSG_LVL_LOW | MSG_MASK_5,
487         MSG_LVL_LOW | MSG_MASK_5,
488         MSG_LVL_LOW | MSG_MASK_5,
489         MSG_LVL_LOW | MSG_MASK_5,
490         MSG_LVL_LOW | MSG_MASK_5,
491         MSG_LVL_LOW | MSG_MASK_5,
492         MSG_LVL_LOW | MSG_MASK_5,
493         MSG_LVL_LOW | MSG_MASK_5,
494         MSG_LVL_LOW | MSG_MASK_5,
495         MSG_LVL_LOW | MSG_MASK_5,
496         MSG_LVL_LOW | MSG_MASK_5,
497         MSG_LVL_LOW | MSG_MASK_5,
498         MSG_LVL_LOW | MSG_MASK_5,
499         MSG_LVL_LOW | MSG_MASK_5,
500         MSG_LVL_LOW | MSG_MASK_5,
501         MSG_LVL_LOW | MSG_MASK_5,
502         MSG_LVL_LOW | MSG_MASK_5,
503         MSG_LVL_LOW | MSG_MASK_5,
504         MSG_LVL_LOW | MSG_MASK_5,
505         MSG_LVL_LOW | MSG_MASK_5,
506         MSG_LVL_LOW | MSG_MASK_5,
507         MSG_LVL_LOW | MSG_MASK_5,
508 };
509
510 static const uint32_t msg_bld_masks_7[] = {
511         MSG_LVL_MED,
512         MSG_LVL_MED,
513         MSG_LVL_MED,
514         MSG_LVL_MED,
515         MSG_LVL_MED,
516         MSG_LVL_MED,
517         MSG_LVL_MED,
518         MSG_LVL_MED,
519         MSG_LVL_MED,
520         MSG_LVL_MED,
521         MSG_LVL_MED,
522         MSG_LVL_MED,
523         MSG_LVL_LOW,
524         MSG_LVL_LOW,
525         MSG_LVL_LOW,
526         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
527         MSG_LVL_FATAL,
528         MSG_LVL_LOW
529 };
530
531 static const uint32_t msg_bld_masks_8[] = {
532         MSG_LVL_MED,
533         MSG_LVL_MED,
534         MSG_LVL_MED,
535         MSG_LVL_MED,
536         MSG_LVL_MED,
537         MSG_LVL_MED,
538         MSG_LVL_MED,
539         MSG_LVL_MED,
540         MSG_LVL_MED,
541         MSG_LVL_MED,
542         MSG_LVL_MED,
543         MSG_LVL_MED,
544         MSG_LVL_MED,
545         MSG_LVL_MED,
546         MSG_LVL_MED,
547         MSG_LVL_MED,
548         MSG_LVL_MED,
549         MSG_LVL_MED,
550         MSG_LVL_MED,
551         MSG_LVL_MED,
552         MSG_LVL_MED,
553         MSG_LVL_MED,
554         MSG_LVL_MED,
555         MSG_LVL_MED,
556         MSG_LVL_MED,
557         MSG_LVL_MED,
558         MSG_LVL_MED,
559         MSG_LVL_MED,
560         MSG_LVL_MED,
561         MSG_LVL_MED,
562         MSG_LVL_MED,
563         MSG_LVL_MED,
564         MSG_LVL_MED,
565         MSG_LVL_MED,
566         MSG_LVL_MED,
567         MSG_LVL_MED,
568         MSG_LVL_HIGH
569 };
570
571 static const uint32_t msg_bld_masks_9[] = {
572         MSG_LVL_MED | MSG_MASK_5,
573         MSG_LVL_MED | MSG_MASK_5,
574         MSG_LVL_MED | MSG_MASK_5,
575         MSG_LVL_MED | MSG_MASK_5,
576         MSG_LVL_MED | MSG_MASK_5,
577         MSG_LVL_MED | MSG_MASK_5,
578         MSG_LVL_MED | MSG_MASK_5,
579         MSG_LVL_MED | MSG_MASK_5,
580         MSG_LVL_MED | MSG_MASK_5,
581         MSG_LVL_MED | MSG_MASK_5,
582         MSG_LVL_MED | MSG_MASK_5,
583         MSG_LVL_MED | MSG_MASK_5,
584         MSG_LVL_MED | MSG_MASK_5,
585         MSG_LVL_MED | MSG_MASK_5,
586         MSG_LVL_MED | MSG_MASK_5,
587         MSG_LVL_MED | MSG_MASK_5,
588         MSG_LVL_MED | MSG_MASK_5,
589         MSG_LVL_LOW
590 };
591
592 static const uint32_t msg_bld_masks_10[] =  {
593         MSG_LVL_MED,
594         MSG_LVL_ERROR,
595         MSG_LVL_LOW,
596         MSG_LVL_LOW|MSG_MASK_5 | \
597                 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
598                 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
599                 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
600                 MSG_MASK_21|MSG_MASK_22,
601         MSG_LVL_LOW|MSG_MASK_5,
602         MSG_LVL_LOW,
603         MSG_LVL_LOW,
604         MSG_LVL_LOW,
605         MSG_LVL_LOW,
606         MSG_LVL_LOW,
607         MSG_LVL_LOW,
608         MSG_LVL_LOW,
609         MSG_LVL_LOW,
610         MSG_LVL_LOW|MSG_MASK_5,
611         MSG_LVL_LOW|MSG_MASK_5,
612         MSG_LVL_LOW|MSG_MASK_5,
613         MSG_LVL_LOW|MSG_MASK_5,
614         MSG_LVL_LOW|MSG_MASK_5,
615         MSG_LVL_LOW|MSG_MASK_5,
616         MSG_LVL_LOW|MSG_MASK_5,
617         MSG_LVL_LOW|MSG_MASK_5,
618         MSG_LVL_LOW|MSG_MASK_5,
619         MSG_LVL_LOW|MSG_MASK_5,
620         MSG_LVL_LOW|MSG_MASK_5,
621         MSG_LVL_LOW|MSG_MASK_5,
622         MSG_LVL_LOW|MSG_MASK_5,
623         MSG_LVL_LOW|MSG_MASK_5,
624         MSG_LVL_LOW|MSG_MASK_5,
625         MSG_LVL_LOW|MSG_MASK_5,
626         MSG_LVL_LOW|MSG_MASK_5,
627         MSG_LVL_LOW|MSG_MASK_5,
628         MSG_LVL_LOW|MSG_MASK_5,
629         MSG_LVL_LOW,
630         MSG_LVL_MED,
631         MSG_LVL_HIGH,
632         MSG_LVL_LOW,
633         MSG_LVL_LOW,
634         MSG_LVL_LOW|MSG_MASK_5,
635         MSG_LVL_LOW|MSG_MASK_0 | MSG_MASK_1 | MSG_MASK_2 | \
636                 MSG_MASK_3 | MSG_MASK_4 | MSG_MASK_5 | MSG_MASK_6,
637         MSG_LVL_HIGH,
638         MSG_LVL_LOW,
639         MSG_LVL_LOW,
640         MSG_LVL_LOW,
641         MSG_LVL_LOW,
642         MSG_LVL_LOW,
643         MSG_LVL_LOW,
644         MSG_LVL_LOW,
645         MSG_LVL_LOW,
646         MSG_LVL_LOW,
647         MSG_LVL_LOW,
648         MSG_LVL_LOW,
649         MSG_LVL_LOW,
650         MSG_LVL_MED,
651         MSG_LVL_MED,
652         MSG_LVL_MED,
653         MSG_LVL_MED,
654         MSG_LVL_MED,
655         MSG_LVL_MED,
656         MSG_LVL_MED,
657         MSG_LVL_MED,
658         MSG_LVL_MED,
659         MSG_LVL_MED,
660         MSG_LVL_MED,
661         MSG_LVL_MED,
662         MSG_LVL_MED,
663         MSG_LVL_MED,
664         MSG_LVL_MED,
665         MSG_LVL_MED,
666         MSG_LVL_MED,
667         MSG_LVL_MED,
668         MSG_LVL_MED,
669         MSG_LVL_MED,
670         MSG_LVL_LOW,
671         MSG_LVL_MED,
672         MSG_LVL_MED,
673         MSG_LVL_MED,
674         MSG_LVL_MED,
675         MSG_LVL_MED,
676         MSG_LVL_MED,
677         MSG_LVL_MED,
678         MSG_LVL_MED,
679         MSG_LVL_MED
680 };
681
682 static const uint32_t msg_bld_masks_11[] = {
683         MSG_LVL_LOW,
684         MSG_LVL_LOW,
685         MSG_LVL_LOW,
686         MSG_LVL_LOW,
687         MSG_LVL_LOW,
688         MSG_LVL_LOW,
689         MSG_LVL_LOW,
690         MSG_LVL_LOW,
691         MSG_LVL_LOW,
692         MSG_LVL_LOW,
693         MSG_LVL_LOW,
694         MSG_LVL_LOW,
695         MSG_LVL_LOW,
696         MSG_LVL_LOW,
697         MSG_LVL_LOW,
698         MSG_LVL_LOW,
699         MSG_LVL_LOW,
700         MSG_LVL_LOW,
701         MSG_LVL_LOW,
702         MSG_LVL_LOW,
703         MSG_LVL_LOW,
704         MSG_LVL_LOW,
705 };
706
707 static const uint32_t msg_bld_masks_12[] = {
708         MSG_LVL_MED,
709         MSG_LVL_MED,
710         MSG_LVL_MED,
711         MSG_LVL_MED,
712 };
713
714 static const uint32_t msg_bld_masks_13[] = {
715         MSG_LVL_MED,
716         MSG_LVL_MED,
717         MSG_LVL_MED,
718         MSG_LVL_MED,
719         MSG_LVL_MED,
720         MSG_LVL_MED,
721         MSG_LVL_MED,
722         MSG_LVL_MED,
723         MSG_LVL_MED,
724         MSG_LVL_MED,
725         MSG_LVL_MED,
726         MSG_LVL_MED,
727 };
728
729 static const uint32_t msg_bld_masks_14[] = {
730         MSG_LVL_MED,
731         MSG_LVL_MED,
732 };
733
734 static const uint32_t msg_bld_masks_15[] = {
735         MSG_LVL_MED
736 };
737
738 static const uint32_t msg_bld_masks_16[] = {
739         MSG_LVL_LOW,
740         MSG_LVL_LOW,
741         MSG_LVL_LOW,
742         MSG_LVL_LOW,
743         MSG_LVL_LOW,
744         MSG_LVL_LOW,
745         MSG_LVL_LOW,
746         MSG_LVL_LOW,
747         MSG_LVL_LOW,
748         MSG_LVL_LOW,
749         MSG_LVL_LOW,
750         MSG_LVL_LOW,
751         MSG_LVL_LOW,
752         MSG_LVL_LOW,
753         MSG_LVL_LOW,
754         MSG_LVL_LOW,
755         MSG_LVL_LOW,
756         MSG_LVL_LOW,
757         MSG_LVL_LOW,
758         MSG_LVL_LOW,
759         MSG_LVL_LOW,
760         MSG_LVL_LOW,
761         MSG_LVL_LOW,
762         MSG_LVL_LOW,
763         MSG_LVL_LOW,
764         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
765                 MSG_LVL_FATAL,
766         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
767                 MSG_LVL_FATAL,
768         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
769                 MSG_LVL_FATAL,
770         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
771                 MSG_LVL_FATAL,
772         MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
773                 MSG_LVL_FATAL,
774         MSG_LVL_MED,
775         MSG_LVL_MED,
776         MSG_LVL_LOW
777 };
778
779 static const uint32_t msg_bld_masks_17[] =  {
780         MSG_LVL_MED,
781         MSG_LVL_MED,
782         MSG_LVL_MED,
783         MSG_LVL_MED | MSG_MASK_6 | \
784                 MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
785         MSG_LVL_MED | MSG_MASK_5 | \
786                 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
787                 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
788                 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17,
789         MSG_LVL_MED,
790         MSG_LVL_MED | MSG_MASK_5 | \
791                 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
792                 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
793                 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17 | \
794                 MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 | MSG_MASK_21 | \
795                 MSG_MASK_22,
796         MSG_LVL_MED,
797         MSG_LVL_MED,
798 };
799
800 static const uint32_t msg_bld_masks_18[] = {
801         MSG_LVL_LOW,
802         MSG_LVL_MED | MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 |
803                 MSG_MASK_12 | MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 |
804                 MSG_MASK_16 | MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 |
805                 MSG_MASK_20,
806         MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6,
807         MSG_LVL_MED | MSG_MASK_5,
808         MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6,
809         MSG_LVL_LOW,
810         MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
811                 MSG_MASK_9,
812         MSG_LVL_LOW,
813         MSG_LVL_LOW,
814         MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
815                 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
816                 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
817                 MSG_MASK_20 | MSG_MASK_21 | MSG_MASK_22,
818         MSG_LVL_LOW
819 };
820
821 static const uint32_t msg_bld_masks_19[] = {
822         MSG_LVL_LOW,
823         MSG_LVL_LOW,
824         MSG_LVL_LOW,
825         MSG_LVL_LOW,
826         MSG_LVL_LOW,
827         MSG_LVL_LOW,
828         MSG_LVL_LOW,
829         MSG_LVL_LOW,
830         MSG_LVL_LOW,
831         MSG_LVL_LOW,
832         MSG_LVL_LOW
833 };
834
835 static const uint32_t msg_bld_masks_20[] = {
836         MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 |
837         MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 |
838         MSG_MASK_12,
839         MSG_LVL_LOW,
840         MSG_LVL_LOW,
841         MSG_LVL_LOW,
842         MSG_LVL_LOW
843 };
844
845 static const uint32_t msg_bld_masks_21[] = {
846         MSG_LVL_HIGH
847 };
848
849 static const uint32_t msg_bld_masks_22[] = {
850         MSG_LVL_LOW,
851         MSG_LVL_LOW,
852         MSG_LVL_LOW,
853         MSG_LVL_LOW,
854         MSG_LVL_LOW,
855         MSG_LVL_LOW,
856         MSG_LVL_LOW,
857         MSG_LVL_LOW,
858         MSG_LVL_LOW,
859         MSG_LVL_LOW,
860         MSG_LVL_LOW,
861         MSG_LVL_LOW,
862         MSG_LVL_LOW,
863         MSG_LVL_LOW,
864         MSG_LVL_LOW,
865         MSG_LVL_LOW,
866         MSG_LVL_LOW,
867         MSG_LVL_LOW,
868         MSG_LVL_LOW,
869         MSG_LVL_LOW,
870         MSG_LVL_LOW,
871         MSG_LVL_LOW,
872         MSG_LVL_LOW,
873         MSG_LVL_LOW,
874         MSG_LVL_LOW,
875         MSG_LVL_LOW,
876         MSG_LVL_LOW,
877         MSG_LVL_LOW
878 };
879
880 static const uint32_t msg_bld_masks_23[] = {
881         MSG_LVL_LOW,
882         MSG_LVL_LOW,
883         MSG_LVL_LOW,
884         MSG_LVL_LOW,
885         MSG_LVL_LOW,
886         MSG_LVL_LOW,
887         MSG_LVL_LOW,
888         MSG_LVL_LOW,
889         MSG_LVL_LOW,
890         MSG_LVL_LOW,
891         MSG_LVL_LOW,
892         MSG_LVL_LOW,
893         MSG_LVL_LOW,
894         MSG_LVL_LOW,
895         MSG_LVL_LOW,
896         MSG_LVL_LOW,
897         MSG_LVL_LOW
898 };
899
900 static const uint32_t msg_bld_masks_24[] = {
901         MSG_LVL_HIGH,
902         MSG_LVL_HIGH,
903         MSG_LVL_HIGH,
904         MSG_LVL_HIGH,
905         MSG_LVL_HIGH,
906         MSG_LVL_HIGH
907 };
908
909 static const uint32_t msg_bld_masks_25[] = {
910         MSG_LVL_LOW
911 };
912
913 /* LOG CODES */
914 static const uint32_t log_code_last_tbl[] = {
915         0x0,    /* EQUIP ID 0 */
916         0x1CC0, /* EQUIP ID 1 */
917         0x0,    /* EQUIP ID 2 */
918         0x0,    /* EQUIP ID 3 */
919         0x4910, /* EQUIP ID 4 */
920         0x5420, /* EQUIP ID 5 */
921         0x0,    /* EQUIP ID 6 */
922         0x74FF, /* EQUIP ID 7 */
923         0x0,    /* EQUIP ID 8 */
924         0x0,    /* EQUIP ID 9 */
925         0xA38A, /* EQUIP ID 10 */
926         0xB9FF, /* EQUIP ID 11 */
927         0x0,    /* EQUIP ID 12 */
928         0xD1FF, /* EQUIP ID 13 */
929         0x0,    /* EQUIP ID 14 */
930         0x0,    /* EQUIP ID 15 */
931 };
932
933 #define LOG_GET_ITEM_NUM(xx_code)       (xx_code & 0x0FFF)
934 #define LOG_GET_EQUIP_ID(xx_code)       ((xx_code & 0xF000) >> 12)
935 #define LOG_ITEMS_TO_SIZE(num_items)    ((num_items+7)/8)
936 #define LOG_SIZE_TO_ITEMS(size)         ((8*size) - 7)
937 #define EVENT_COUNT_TO_BYTES(count)     ((count/8) + 1)
938
939 #endif