blob: 483b7ce6d86a54f768351ac246ede984147537b1 [file] [log] [blame]
Chris Lew2aaae992017-03-16 17:20:45 -07001/* Copyright (c) 2008-2017, The Linux Foundation. All rights reserved.
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -07002 *
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#define DATA_TYPE_EVENT 0
38#define DATA_TYPE_F3 1
39#define DATA_TYPE_LOG 2
40#define DATA_TYPE_RESPONSE 3
41#define DATA_TYPE_DELAYED_RESPONSE 4
42#define DATA_TYPE_DCI_LOG 0x00000100
43#define DATA_TYPE_DCI_EVENT 0x00000200
44
45/* Different IOCTL values */
46#define DIAG_IOCTL_COMMAND_REG 0
47#define DIAG_IOCTL_COMMAND_DEREG 1
48#define DIAG_IOCTL_SWITCH_LOGGING 7
49#define DIAG_IOCTL_GET_DELAYED_RSP_ID 8
50#define DIAG_IOCTL_LSM_DEINIT 9
51#define DIAG_IOCTL_DCI_INIT 20
52#define DIAG_IOCTL_DCI_DEINIT 21
53#define DIAG_IOCTL_DCI_SUPPORT 22
54#define DIAG_IOCTL_DCI_REG 23
55#define DIAG_IOCTL_DCI_STREAM_INIT 24
56#define DIAG_IOCTL_DCI_HEALTH_STATS 25
57#define DIAG_IOCTL_DCI_LOG_STATUS 26
58#define DIAG_IOCTL_DCI_EVENT_STATUS 27
59#define DIAG_IOCTL_DCI_CLEAR_LOGS 28
60#define DIAG_IOCTL_DCI_CLEAR_EVENTS 29
61#define DIAG_IOCTL_REMOTE_DEV 32
62#define DIAG_IOCTL_VOTE_REAL_TIME 33
63#define DIAG_IOCTL_GET_REAL_TIME 34
64#define DIAG_IOCTL_PERIPHERAL_BUF_CONFIG 35
65#define DIAG_IOCTL_PERIPHERAL_BUF_DRAIN 36
66#define DIAG_IOCTL_REGISTER_CALLBACK 37
67#define DIAG_IOCTL_HDLC_TOGGLE 38
68
69/* PC Tools IDs */
70#define APQ8060_TOOLS_ID 4062
71#define AO8960_TOOLS_ID 4064
72#define APQ8064_TOOLS_ID 4072
73#define MSM8625_TOOLS_ID 4075
74#define MSM8930_TOOLS_ID 4076
75#define MSM8630_TOOLS_ID 4077
76#define MSM8230_TOOLS_ID 4078
77#define APQ8030_TOOLS_ID 4079
78#define MSM8627_TOOLS_ID 4080
79#define MSM8227_TOOLS_ID 4081
80#define MSM8974_TOOLS_ID 4083
81#define APQ8074_TOOLS_ID 4090
82#define MSM8916_TOOLS_ID 4094
83#define APQ8084_TOOLS_ID 4095
84#define MSM8994_TOOLS_ID 4097
85#define MSM8939_TOOLS_ID 4103
86#define APQ8026_TOOLS_ID 4104
87#define MSM8909_TOOLS_ID 4108
88#define MSM8992_TOOLS_ID 4111
89#define MSM8952_TOOLS_ID 4110
90#define MSM_8996_TOOLS_ID 4112
91
92#define MSG_MASK_0 (0x00000001)
93#define MSG_MASK_1 (0x00000002)
94#define MSG_MASK_2 (0x00000004)
95#define MSG_MASK_3 (0x00000008)
96#define MSG_MASK_4 (0x00000010)
97#define MSG_MASK_5 (0x00000020)
98#define MSG_MASK_6 (0x00000040)
99#define MSG_MASK_7 (0x00000080)
100#define MSG_MASK_8 (0x00000100)
101#define MSG_MASK_9 (0x00000200)
102#define MSG_MASK_10 (0x00000400)
103#define MSG_MASK_11 (0x00000800)
104#define MSG_MASK_12 (0x00001000)
105#define MSG_MASK_13 (0x00002000)
106#define MSG_MASK_14 (0x00004000)
107#define MSG_MASK_15 (0x00008000)
108#define MSG_MASK_16 (0x00010000)
109#define MSG_MASK_17 (0x00020000)
110#define MSG_MASK_18 (0x00040000)
111#define MSG_MASK_19 (0x00080000)
112#define MSG_MASK_20 (0x00100000)
113#define MSG_MASK_21 (0x00200000)
114#define MSG_MASK_22 (0x00400000)
115#define MSG_MASK_23 (0x00800000)
116#define MSG_MASK_24 (0x01000000)
117#define MSG_MASK_25 (0x02000000)
118#define MSG_MASK_26 (0x04000000)
119#define MSG_MASK_27 (0x08000000)
120#define MSG_MASK_28 (0x10000000)
121#define MSG_MASK_29 (0x20000000)
122#define MSG_MASK_30 (0x40000000)
123#define MSG_MASK_31 (0x80000000)
124
125/* These masks are to be used for support of all legacy messages in the sw.
126 * The user does not need to remember the names as they will be embedded in
127 * the appropriate macros.
128 */
129#define MSG_LEGACY_LOW MSG_MASK_0
130#define MSG_LEGACY_MED MSG_MASK_1
131#define MSG_LEGACY_HIGH MSG_MASK_2
132#define MSG_LEGACY_ERROR MSG_MASK_3
133#define MSG_LEGACY_FATAL MSG_MASK_4
134
135/* Legacy Message Priorities */
136#define MSG_LVL_FATAL (MSG_LEGACY_FATAL)
137#define MSG_LVL_ERROR (MSG_LEGACY_ERROR | MSG_LVL_FATAL)
138#define MSG_LVL_HIGH (MSG_LEGACY_HIGH | MSG_LVL_ERROR)
139#define MSG_LVL_MED (MSG_LEGACY_MED | MSG_LVL_HIGH)
140#define MSG_LVL_LOW (MSG_LEGACY_LOW | MSG_LVL_MED)
141
142#define MSG_LVL_NONE 0
143
144/* This needs to be modified manually now, when we add
145 * a new RANGE of SSIDs to the msg_mask_tbl.
146 */
147#define MSG_MASK_TBL_CNT 25
Chris Lew2aaae992017-03-16 17:20:45 -0700148#define APPS_EVENT_LAST_ID 0x0B3F
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700149
150#define MSG_SSID_0 0
Chris Lew2aaae992017-03-16 17:20:45 -0700151#define MSG_SSID_0_LAST 121
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700152#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
Chris Lew2aaae992017-03-16 17:20:45 -0700163#define MSG_SSID_6_LAST 4583
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700164#define MSG_SSID_7 4600
165#define MSG_SSID_7_LAST 4615
166#define MSG_SSID_8 5000
Chris Leweddcf452016-10-05 15:01:58 -0700167#define MSG_SSID_8_LAST 5033
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700168#define MSG_SSID_9 5500
169#define MSG_SSID_9_LAST 5516
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 8529
184#define MSG_SSID_17 9000
185#define MSG_SSID_17_LAST 9008
186#define MSG_SSID_18 9500
Chris Lew2aaae992017-03-16 17:20:45 -0700187#define MSG_SSID_18_LAST 9521
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700188#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
Chris Lew5b5cd0a2016-10-11 17:47:48 -0700197#define MSG_SSID_23_LAST 10416
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700198#define MSG_SSID_24 0xC000
199#define MSG_SSID_24_LAST 0xC063
200
201static const uint32_t msg_bld_masks_0[] = {
202 MSG_LVL_LOW,
203 MSG_LVL_MED,
204 MSG_LVL_LOW,
205 MSG_LVL_ERROR,
206 MSG_LVL_LOW,
207 MSG_LVL_LOW,
208 MSG_LVL_MED,
209 MSG_LVL_HIGH,
210 MSG_LVL_ERROR,
211 MSG_LVL_LOW,
212 MSG_LVL_LOW,
213 MSG_LVL_ERROR,
214 MSG_LVL_MED,
215 MSG_LVL_MED,
216 MSG_LVL_MED,
217 MSG_LVL_HIGH,
218 MSG_LVL_HIGH,
219 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
220 MSG_LVL_LOW,
221 MSG_LVL_ERROR,
222 MSG_LVL_LOW,
223 MSG_LVL_MED,
224 MSG_LVL_MED,
225 MSG_LVL_LOW,
226 MSG_LVL_MED,
227 MSG_LVL_LOW,
228 MSG_LVL_MED,
229 MSG_LVL_MED,
230 MSG_LVL_MED,
231 MSG_LVL_MED,
232 MSG_LVL_MED | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 |
233 MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | MSG_MASK_14 |
234 MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17 | MSG_MASK_18 |
235 MSG_MASK_19 | MSG_MASK_20 | MSG_MASK_21,
236 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
237 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
238 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
239 MSG_MASK_17,
240 MSG_LVL_LOW,
241 MSG_LVL_MED,
242 MSG_LVL_HIGH,
243 MSG_LVL_HIGH,
244 MSG_LVL_HIGH,
245 MSG_LVL_HIGH,
246 MSG_LVL_MED,
247 MSG_LVL_MED,
248 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
249 MSG_LVL_LOW,
250 MSG_LVL_LOW,
251 MSG_LVL_HIGH,
252 MSG_LVL_HIGH,
253 MSG_LVL_HIGH,
254 MSG_LVL_MED,
255 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
256 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
257 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
258 MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 |
259 MSG_MASK_21 | MSG_MASK_22 | MSG_MASK_23 | MSG_MASK_24|
260 MSG_MASK_25,
261 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
262 MSG_MASK_9 | MSG_MASK_10,
263 MSG_LVL_MED,
264 MSG_LVL_LOW,
265 MSG_LVL_LOW,
266 MSG_LVL_MED,
267 MSG_LVL_LOW,
268 MSG_LVL_LOW,
269 MSG_LVL_LOW,
270 MSG_LVL_HIGH,
271 MSG_LVL_LOW,
272 MSG_LVL_LOW,
273 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
274 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
275 MSG_LVL_MED,
276 MSG_LVL_MED,
277 MSG_LVL_LOW,
278 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
279 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
280 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
281 MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20,
282 MSG_LVL_LOW,
283 MSG_LVL_MED,
284 MSG_LVL_LOW,
285 MSG_LVL_LOW,
286 MSG_LVL_LOW,
287 MSG_LVL_HIGH,
288 MSG_LVL_HIGH,
289 MSG_LVL_LOW,
290 MSG_LVL_LOW,
291 MSG_LVL_LOW,
292 MSG_LVL_LOW,
293 MSG_LVL_LOW,
294 MSG_LVL_HIGH | MSG_MASK_21,
295 MSG_LVL_HIGH,
296 MSG_LVL_LOW,
297 MSG_LVL_LOW,
298 MSG_LVL_LOW,
299 MSG_LVL_LOW,
300 MSG_LVL_LOW,
301 MSG_LVL_LOW,
302 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
303 MSG_LVL_FATAL,
304 MSG_LVL_LOW,
305 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
306 MSG_LVL_FATAL,
307 MSG_LVL_LOW,
308 MSG_LVL_MED,
309 MSG_LVL_LOW,
310 MSG_LVL_LOW,
311 MSG_LVL_LOW,
312 MSG_LVL_LOW,
313 MSG_LVL_LOW,
314 MSG_LVL_LOW,
315 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
316 MSG_LVL_FATAL,
317 MSG_LVL_MED,
318 MSG_LVL_HIGH,
319 MSG_LVL_LOW,
320 MSG_LVL_HIGH,
321 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
322 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 |
329 MSG_LVL_FATAL,
330 MSG_LVL_HIGH,
331 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
332 MSG_LVL_FATAL,
333 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
334 MSG_LVL_FATAL,
335 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
336 MSG_LVL_FATAL,
337 MSG_LVL_LOW,
338 MSG_LVL_MED,
339 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
340 MSG_LVL_FATAL,
341 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
342 MSG_LVL_FATAL,
343 MSG_LVL_MED,
344 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
345 MSG_LVL_FATAL,
346 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
347 MSG_LVL_FATAL,
348 MSG_LVL_MED,
349 MSG_LVL_MED,
Chris Leweddcf452016-10-05 15:01:58 -0700350 MSG_LVL_HIGH,
351 MSG_LVL_LOW,
Chris Lew2aaae992017-03-16 17:20:45 -0700352 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
353 MSG_LVL_HIGH
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700354};
355
356static const uint32_t msg_bld_masks_1[] = {
357 MSG_LVL_MED,
358 MSG_LVL_HIGH,
359 MSG_LVL_HIGH,
360 MSG_LVL_LOW,
361 MSG_LVL_HIGH,
362 MSG_LVL_HIGH,
363 MSG_LVL_HIGH
364};
365
366static const uint32_t msg_bld_masks_2[] = {
367 MSG_LVL_MED,
368 MSG_LVL_MED,
369 MSG_LVL_MED,
370 MSG_LVL_MED,
371 MSG_LVL_MED,
372 MSG_LVL_MED | MSG_MASK_5,
373 MSG_LVL_MED,
374 MSG_LVL_MED
375};
376
377static const uint32_t msg_bld_masks_3[] = {
378 MSG_LVL_MED,
379 MSG_LVL_MED,
380 MSG_LVL_MED,
381 MSG_LVL_MED,
382 MSG_LVL_MED,
383 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
384 MSG_MASK_9 | MSG_MASK_10,
385 MSG_LVL_MED,
386 MSG_LVL_MED,
387 MSG_LVL_MED
388};
389
390static const uint32_t msg_bld_masks_4[] = {
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_HIGH,
404 MSG_LVL_LOW,
405 MSG_LVL_LOW
406};
407
408static const uint32_t msg_bld_masks_5[] = {
409 MSG_LVL_HIGH,
410 MSG_LVL_MED,
411 MSG_LVL_HIGH,
412 MSG_LVL_MED,
413 MSG_LVL_MED,
414 MSG_LVL_MED,
415 MSG_LVL_MED,
416 MSG_LVL_MED,
417 MSG_LVL_MED,
418 MSG_LVL_MED | MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 |
419 MSG_MASK_8 | MSG_MASK_9,
420 MSG_LVL_MED
421};
422
423static const uint32_t msg_bld_masks_6[] = {
424 MSG_LVL_LOW,
425 MSG_LVL_LOW,
426 MSG_LVL_LOW,
427 MSG_LVL_LOW,
428 MSG_LVL_LOW,
429 MSG_LVL_LOW,
430 MSG_LVL_LOW,
431 MSG_LVL_LOW,
432 MSG_LVL_LOW,
433 MSG_LVL_LOW,
434 MSG_LVL_LOW,
435 MSG_LVL_LOW,
436 MSG_LVL_LOW,
437 MSG_LVL_LOW,
438 MSG_LVL_LOW,
439 MSG_LVL_LOW,
440 MSG_LVL_LOW,
441 MSG_LVL_LOW,
442 MSG_LVL_LOW,
443 MSG_LVL_LOW,
444 MSG_LVL_LOW,
445 MSG_LVL_LOW,
446 MSG_LVL_LOW,
447 MSG_LVL_LOW,
448 MSG_LVL_LOW,
449 MSG_LVL_LOW,
450 MSG_LVL_LOW,
451 MSG_LVL_LOW,
452 MSG_LVL_LOW,
453 MSG_LVL_LOW,
454 MSG_LVL_LOW,
455 MSG_LVL_LOW,
456 MSG_LVL_LOW,
457 MSG_LVL_LOW,
458 MSG_LVL_LOW,
459 MSG_LVL_LOW,
460 MSG_LVL_LOW,
461 MSG_LVL_LOW,
462 MSG_LVL_LOW,
463 MSG_LVL_LOW,
464 MSG_LVL_LOW,
465 MSG_LVL_LOW,
466 MSG_LVL_LOW,
467 MSG_LVL_LOW,
468 MSG_LVL_LOW,
469 MSG_LVL_LOW,
470 MSG_LVL_LOW,
471 MSG_LVL_LOW,
472 MSG_LVL_LOW,
473 MSG_LVL_LOW,
474 MSG_LVL_LOW,
475 MSG_LVL_LOW,
476 MSG_LVL_LOW,
477 MSG_LVL_LOW,
478 MSG_LVL_LOW,
479 MSG_LVL_LOW,
480 MSG_LVL_LOW,
481 MSG_LVL_LOW,
482 MSG_LVL_LOW,
483 MSG_LVL_LOW,
484 MSG_LVL_LOW,
485 MSG_LVL_LOW,
486 MSG_LVL_LOW,
487 MSG_LVL_LOW,
488 MSG_LVL_LOW,
489 MSG_LVL_LOW,
490 MSG_LVL_LOW,
491 MSG_LVL_LOW,
492 MSG_LVL_LOW,
493 MSG_LVL_LOW,
494 MSG_LVL_LOW,
495 MSG_LVL_LOW,
496 MSG_LVL_LOW,
497 MSG_LVL_LOW
498};
499
500static const uint32_t msg_bld_masks_7[] = {
501 MSG_LVL_MED,
502 MSG_LVL_MED,
503 MSG_LVL_MED,
504 MSG_LVL_MED,
505 MSG_LVL_MED,
506 MSG_LVL_MED,
507 MSG_LVL_MED,
508 MSG_LVL_MED,
509 MSG_LVL_MED,
510 MSG_LVL_MED,
511 MSG_LVL_MED,
512 MSG_LVL_MED,
513 MSG_LVL_LOW,
514 MSG_LVL_LOW,
515 MSG_LVL_LOW,
516 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR | MSG_LVL_FATAL
517};
518
519static const uint32_t msg_bld_masks_8[] = {
520 MSG_LVL_MED,
521 MSG_LVL_MED,
522 MSG_LVL_MED,
523 MSG_LVL_MED,
524 MSG_LVL_MED,
525 MSG_LVL_MED,
526 MSG_LVL_MED,
527 MSG_LVL_MED,
528 MSG_LVL_MED,
529 MSG_LVL_MED,
530 MSG_LVL_MED,
531 MSG_LVL_MED,
532 MSG_LVL_MED,
533 MSG_LVL_MED,
534 MSG_LVL_MED,
535 MSG_LVL_MED,
536 MSG_LVL_LOW,
537 MSG_LVL_LOW,
538 MSG_LVL_LOW,
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,
Chris Leweddcf452016-10-05 15:01:58 -0700552 MSG_LVL_MED,
553 MSG_LVL_HIGH
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700554};
555
556static const uint32_t msg_bld_masks_9[] = {
557 MSG_LVL_MED | MSG_MASK_5,
558 MSG_LVL_MED | MSG_MASK_5,
559 MSG_LVL_MED | MSG_MASK_5,
560 MSG_LVL_MED | MSG_MASK_5,
561 MSG_LVL_MED | MSG_MASK_5,
562 MSG_LVL_MED | MSG_MASK_5,
563 MSG_LVL_MED | MSG_MASK_5,
564 MSG_LVL_MED | MSG_MASK_5,
565 MSG_LVL_MED | MSG_MASK_5,
566 MSG_LVL_MED | MSG_MASK_5,
567 MSG_LVL_MED | MSG_MASK_5,
568 MSG_LVL_MED | MSG_MASK_5,
569 MSG_LVL_MED | MSG_MASK_5,
570 MSG_LVL_MED | MSG_MASK_5,
571 MSG_LVL_MED | MSG_MASK_5,
572 MSG_LVL_MED | MSG_MASK_5,
573 MSG_LVL_MED | MSG_MASK_5
574};
575
576static const uint32_t msg_bld_masks_10[] = {
577 MSG_LVL_MED,
578 MSG_LVL_ERROR,
579 MSG_LVL_LOW,
580 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
581 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
582 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
583 MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 |
584 MSG_MASK_21 | MSG_MASK_22,
585 MSG_LVL_LOW | MSG_MASK_5,
586 MSG_LVL_LOW,
587 MSG_LVL_LOW,
588 MSG_LVL_LOW,
589 MSG_LVL_LOW,
590 MSG_LVL_LOW,
591 MSG_LVL_LOW,
592 MSG_LVL_LOW,
593 MSG_LVL_LOW,
594 MSG_LVL_LOW | MSG_MASK_5,
595 MSG_LVL_LOW | MSG_MASK_5,
596 MSG_LVL_LOW | MSG_MASK_5,
597 MSG_LVL_LOW | MSG_MASK_5,
598 MSG_LVL_LOW | MSG_MASK_5,
599 MSG_LVL_LOW | MSG_MASK_5,
600 MSG_LVL_LOW | MSG_MASK_5,
601 MSG_LVL_LOW | MSG_MASK_5,
602 MSG_LVL_LOW | MSG_MASK_5,
603 MSG_LVL_LOW | MSG_MASK_5,
604 MSG_LVL_LOW | MSG_MASK_5,
605 MSG_LVL_LOW | MSG_MASK_5,
606 MSG_LVL_LOW | MSG_MASK_5,
607 MSG_LVL_LOW | MSG_MASK_5,
608 MSG_LVL_LOW | MSG_MASK_5,
609 MSG_LVL_LOW | MSG_MASK_5,
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,
614 MSG_LVL_MED,
615 MSG_LVL_HIGH,
616 MSG_LVL_LOW,
617 MSG_LVL_LOW,
618 MSG_LVL_LOW | MSG_MASK_5,
619 MSG_LVL_LOW|MSG_MASK_0 | MSG_MASK_1 | MSG_MASK_2 | MSG_MASK_3 |
620 MSG_MASK_4 | MSG_MASK_5 | MSG_MASK_6,
621 MSG_LVL_HIGH,
622 MSG_LVL_LOW,
623 MSG_LVL_LOW,
624 MSG_LVL_LOW,
625 MSG_LVL_LOW,
626 MSG_LVL_LOW,
627 MSG_LVL_LOW,
628 MSG_LVL_LOW,
629 MSG_LVL_LOW,
630 MSG_LVL_LOW,
631 MSG_LVL_LOW,
632 MSG_LVL_LOW,
633 MSG_LVL_LOW,
634 MSG_LVL_MED,
635 MSG_LVL_MED,
636 MSG_LVL_MED,
637 MSG_LVL_MED,
638 MSG_LVL_MED,
639 MSG_LVL_MED,
640 MSG_LVL_MED,
641 MSG_LVL_MED,
642 MSG_LVL_MED,
643 MSG_LVL_MED,
644 MSG_LVL_MED,
645 MSG_LVL_MED,
646 MSG_LVL_MED,
647 MSG_LVL_MED,
648 MSG_LVL_MED,
649 MSG_LVL_MED,
650 MSG_LVL_MED,
651 MSG_LVL_MED,
652 MSG_LVL_MED,
653 MSG_LVL_MED,
654 MSG_LVL_LOW,
655 MSG_LVL_LOW,
656 MSG_LVL_LOW,
657 MSG_LVL_LOW,
658 MSG_LVL_LOW,
659 MSG_LVL_LOW,
660 MSG_LVL_LOW,
661 MSG_LVL_LOW,
662 MSG_LVL_LOW,
663 MSG_LVL_MED
664};
665
666static const uint32_t msg_bld_masks_11[] = {
667 MSG_LVL_LOW,
668 MSG_LVL_LOW,
669 MSG_LVL_LOW,
670 MSG_LVL_LOW,
671 MSG_LVL_LOW,
672 MSG_LVL_LOW,
673 MSG_LVL_LOW,
674 MSG_LVL_LOW,
675 MSG_LVL_LOW,
676 MSG_LVL_LOW,
677 MSG_LVL_LOW,
678 MSG_LVL_LOW,
679 MSG_LVL_LOW,
680 MSG_LVL_LOW,
681 MSG_LVL_LOW,
682 MSG_LVL_LOW,
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};
690
691static const uint32_t msg_bld_masks_12[] = {
692 MSG_LVL_MED,
693 MSG_LVL_MED,
694 MSG_LVL_MED,
695 MSG_LVL_MED,
696};
697
698static const uint32_t msg_bld_masks_13[] = {
699 MSG_LVL_MED,
700 MSG_LVL_MED,
701 MSG_LVL_MED,
702 MSG_LVL_MED,
703 MSG_LVL_MED,
704 MSG_LVL_MED,
705 MSG_LVL_MED,
706 MSG_LVL_MED,
707 MSG_LVL_MED,
708 MSG_LVL_MED,
709 MSG_LVL_MED,
710 MSG_LVL_MED,
711};
712
713static const uint32_t msg_bld_masks_14[] = {
714 MSG_LVL_MED,
715 MSG_LVL_MED,
716};
717
718static const uint32_t msg_bld_masks_15[] = {
719 MSG_LVL_MED
720};
721
722static const uint32_t msg_bld_masks_16[] = {
723 MSG_LVL_LOW,
724 MSG_LVL_LOW,
725 MSG_LVL_LOW,
726 MSG_LVL_LOW,
727 MSG_LVL_LOW,
728 MSG_LVL_LOW,
729 MSG_LVL_LOW,
730 MSG_LVL_LOW,
731 MSG_LVL_LOW,
732 MSG_LVL_LOW,
733 MSG_LVL_LOW,
734 MSG_LVL_LOW,
735 MSG_LVL_LOW,
736 MSG_LVL_LOW,
737 MSG_LVL_LOW,
738 MSG_LVL_LOW,
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 | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
749 MSG_LVL_FATAL,
750 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
751 MSG_LVL_FATAL,
752 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
753 MSG_LVL_FATAL,
754 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
755 MSG_LVL_FATAL,
756 MSG_LVL_LOW | MSG_LVL_MED | MSG_LVL_HIGH | MSG_LVL_ERROR |
757 MSG_LVL_FATAL
758};
759
760static const uint32_t msg_bld_masks_17[] = {
761 MSG_LVL_MED,
762 MSG_LVL_MED,
763 MSG_LVL_MED,
764 MSG_LVL_MED | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
765 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
766 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
767 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
768 MSG_MASK_17,
769 MSG_LVL_MED,
770 MSG_LVL_MED | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
771 MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 |
772 MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 |
773 MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 |
774 MSG_MASK_21 | MSG_MASK_22,
775 MSG_LVL_MED,
776 MSG_LVL_MED,
777};
778
779static const uint32_t msg_bld_masks_18[] = {
780 MSG_LVL_LOW,
781 MSG_LVL_LOW | MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 | MSG_MASK_11 |
782 MSG_MASK_12 | MSG_MASK_13 | MSG_MASK_14 | MSG_MASK_15 |
783 MSG_MASK_16 | MSG_MASK_17 | MSG_MASK_18 | MSG_MASK_19 |
784 MSG_MASK_20,
785 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
786 MSG_LVL_LOW | MSG_MASK_5,
787 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
788 MSG_LVL_LOW,
789 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 |
790 MSG_MASK_9,
791 MSG_LVL_LOW,
792 MSG_LVL_LOW,
793 MSG_LVL_LOW,
794 MSG_LVL_LOW
795};
796
797static const uint32_t msg_bld_masks_19[] = {
798 MSG_LVL_LOW,
799 MSG_LVL_LOW,
800 MSG_LVL_LOW,
801 MSG_LVL_LOW,
802 MSG_LVL_LOW,
803 MSG_LVL_LOW,
804 MSG_LVL_LOW,
805 MSG_LVL_LOW,
806 MSG_LVL_LOW,
807 MSG_LVL_LOW,
808 MSG_LVL_LOW
809};
810
811static const uint32_t msg_bld_masks_20[] = {
812 MSG_LVL_LOW,
813 MSG_LVL_LOW,
814 MSG_LVL_LOW,
815 MSG_LVL_LOW,
816 MSG_LVL_LOW
817};
818
819static const uint32_t msg_bld_masks_21[] = {
820 MSG_LVL_HIGH
821};
822
823static const uint32_t msg_bld_masks_22[] = {
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 MSG_LVL_LOW,
834 MSG_LVL_LOW,
835 MSG_LVL_LOW,
836 MSG_LVL_LOW,
837 MSG_LVL_LOW,
838 MSG_LVL_LOW,
839 MSG_LVL_LOW,
840 MSG_LVL_LOW,
841 MSG_LVL_LOW,
842 MSG_LVL_LOW,
843 MSG_LVL_LOW,
844 MSG_LVL_LOW,
845 MSG_LVL_LOW,
846 MSG_LVL_LOW,
847 MSG_LVL_LOW,
848 MSG_LVL_LOW,
849 MSG_LVL_LOW,
850 MSG_LVL_LOW,
851 MSG_LVL_LOW
852};
853
854static const uint32_t msg_bld_masks_23[] = {
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,
Chris Lew5b5cd0a2016-10-11 17:47:48 -0700870 MSG_LVL_LOW,
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700871 MSG_LVL_LOW
872};
873
874/* LOG CODES */
875static const uint32_t log_code_last_tbl[] = {
876 0x0, /* EQUIP ID 0 */
Chris Lew2aaae992017-03-16 17:20:45 -0700877 0x1A11, /* EQUIP ID 1 */
Sreelakshmi Gownipallicb8893d2016-10-19 16:02:34 -0700878 0x0, /* EQUIP ID 2 */
879 0x0, /* EQUIP ID 3 */
880 0x4910, /* EQUIP ID 4 */
881 0x5420, /* EQUIP ID 5 */
882 0x0, /* EQUIP ID 6 */
883 0x74FF, /* EQUIP ID 7 */
884 0x0, /* EQUIP ID 8 */
885 0x0, /* EQUIP ID 9 */
886 0xA38A, /* EQUIP ID 10 */
887 0xB201, /* EQUIP ID 11 */
888 0x0, /* EQUIP ID 12 */
889 0xD1FF, /* EQUIP ID 13 */
890 0x0, /* EQUIP ID 14 */
891 0x0, /* EQUIP ID 15 */
892};
893
894#define LOG_GET_ITEM_NUM(xx_code) (xx_code & 0x0FFF)
895#define LOG_GET_EQUIP_ID(xx_code) ((xx_code & 0xF000) >> 12)
896#define LOG_ITEMS_TO_SIZE(num_items) ((num_items+7)/8)
897#define LOG_SIZE_TO_ITEMS(size) ((8*size) - 7)
898#define EVENT_COUNT_TO_BYTES(count) ((count/8) + 1)
899
900#endif