blob: 422efaaca5d706d0e4df293648136efe06195961 [file] [log] [blame]
Katish Paran313acf02014-09-12 12:39:34 +05301/* Copyright (c) 2008-2014, The Linux Foundation. All rights reserved.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -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 1
17#define LOG_MASKS_TYPE 2
18#define EVENT_MASKS_TYPE 4
19#define PKT_TYPE 8
20#define DEINIT_TYPE 16
Dixon Peterson2061f852013-01-22 17:53:05 -080021#define USER_SPACE_DATA_TYPE 32
Shalabh Jain1c99e4c2012-03-26 18:47:59 -070022#define DCI_DATA_TYPE 64
Dixon Petersond3fb8712013-04-01 20:14:57 -070023#define CALLBACK_DATA_TYPE 128
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070024#define USB_MODE 1
25#define MEMORY_DEVICE_MODE 2
26#define NO_LOGGING_MODE 3
Shalabh Jain69890aa2011-10-10 12:59:16 -070027#define UART_MODE 4
Dixon Peterson625ee652012-06-21 22:03:49 -070028#define SOCKET_MODE 5
Dixon Peterson2061f852013-01-22 17:53:05 -080029#define CALLBACK_MODE 6
Dixon Petersond3fb8712013-04-01 20:14:57 -070030#define MEMORY_DEVICE_MODE_NRT 7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070031/* different values that go in for diag_data_type */
32#define DATA_TYPE_EVENT 0
33#define DATA_TYPE_F3 1
34#define DATA_TYPE_LOG 2
35#define DATA_TYPE_RESPONSE 3
36
37/* Different IOCTL values */
38#define DIAG_IOCTL_COMMAND_REG 0
39#define DIAG_IOCTL_SWITCH_LOGGING 7
40#define DIAG_IOCTL_GET_DELAYED_RSP_ID 8
41#define DIAG_IOCTL_LSM_DEINIT 9
Shalabh Jain1c99e4c2012-03-26 18:47:59 -070042#define DIAG_IOCTL_DCI_INIT 20
43#define DIAG_IOCTL_DCI_DEINIT 21
44#define DIAG_IOCTL_DCI_SUPPORT 22
45#define DIAG_IOCTL_DCI_REG 23
Shalabh Jain14f480d2012-09-14 10:56:49 -070046#define DIAG_IOCTL_DCI_STREAM_INIT 24
Shalabh Jaind63ae312012-10-23 12:51:30 -070047#define DIAG_IOCTL_DCI_HEALTH_STATS 25
Dixon Petersond3fb8712013-04-01 20:14:57 -070048#define DIAG_IOCTL_DCI_LOG_STATUS 26
49#define DIAG_IOCTL_DCI_EVENT_STATUS 27
50#define DIAG_IOCTL_DCI_CLEAR_LOGS 28
51#define DIAG_IOCTL_DCI_CLEAR_EVENTS 29
Dixon Peterson2061f852013-01-22 17:53:05 -080052#define DIAG_IOCTL_REMOTE_DEV 32
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070053
Dixon Petersonb4618a42012-02-29 18:56:31 -080054/* PC Tools IDs */
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070055#define APQ8060_TOOLS_ID 4062
56#define AO8960_TOOLS_ID 4064
Shalabh Jainfb8e3c12011-10-19 17:29:42 -070057#define APQ8064_TOOLS_ID 4072
Dixon Petersonb4618a42012-02-29 18:56:31 -080058#define MSM8625_TOOLS_ID 4075
Shalabh Jaina7557842012-02-01 20:25:03 +053059#define MSM8930_TOOLS_ID 4076
60#define MSM8630_TOOLS_ID 4077
61#define MSM8230_TOOLS_ID 4078
62#define APQ8030_TOOLS_ID 4079
63#define MSM8627_TOOLS_ID 4080
64#define MSM8227_TOOLS_ID 4081
Dixon Petersona2dd7352012-05-21 17:37:10 -070065#define MSM8974_TOOLS_ID 4083
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070066
67#define MSG_MASK_0 (0x00000001)
68#define MSG_MASK_1 (0x00000002)
69#define MSG_MASK_2 (0x00000004)
70#define MSG_MASK_3 (0x00000008)
71#define MSG_MASK_4 (0x00000010)
72#define MSG_MASK_5 (0x00000020)
73#define MSG_MASK_6 (0x00000040)
74#define MSG_MASK_7 (0x00000080)
75#define MSG_MASK_8 (0x00000100)
76#define MSG_MASK_9 (0x00000200)
77#define MSG_MASK_10 (0x00000400)
78#define MSG_MASK_11 (0x00000800)
79#define MSG_MASK_12 (0x00001000)
80#define MSG_MASK_13 (0x00002000)
81#define MSG_MASK_14 (0x00004000)
82#define MSG_MASK_15 (0x00008000)
83#define MSG_MASK_16 (0x00010000)
84#define MSG_MASK_17 (0x00020000)
85#define MSG_MASK_18 (0x00040000)
86#define MSG_MASK_19 (0x00080000)
87#define MSG_MASK_20 (0x00100000)
88#define MSG_MASK_21 (0x00200000)
89#define MSG_MASK_22 (0x00400000)
90#define MSG_MASK_23 (0x00800000)
91#define MSG_MASK_24 (0x01000000)
92#define MSG_MASK_25 (0x02000000)
93#define MSG_MASK_26 (0x04000000)
94#define MSG_MASK_27 (0x08000000)
95#define MSG_MASK_28 (0x10000000)
96#define MSG_MASK_29 (0x20000000)
97#define MSG_MASK_30 (0x40000000)
98#define MSG_MASK_31 (0x80000000)
99
100/* These masks are to be used for support of all legacy messages in the sw.
101The user does not need to remember the names as they will be embedded in
102the appropriate macros. */
103#define MSG_LEGACY_LOW MSG_MASK_0
104#define MSG_LEGACY_MED MSG_MASK_1
105#define MSG_LEGACY_HIGH MSG_MASK_2
106#define MSG_LEGACY_ERROR MSG_MASK_3
107#define MSG_LEGACY_FATAL MSG_MASK_4
108
109/* Legacy Message Priorities */
110#define MSG_LVL_FATAL (MSG_LEGACY_FATAL)
111#define MSG_LVL_ERROR (MSG_LEGACY_ERROR | MSG_LVL_FATAL)
112#define MSG_LVL_HIGH (MSG_LEGACY_HIGH | MSG_LVL_ERROR)
113#define MSG_LVL_MED (MSG_LEGACY_MED | MSG_LVL_HIGH)
114#define MSG_LVL_LOW (MSG_LEGACY_LOW | MSG_LVL_MED)
115
116#define MSG_LVL_NONE 0
117
118/* This needs to be modified manually now, when we add
119 a new RANGE of SSIDs to the msg_mask_tbl */
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700120#define MSG_MASK_TBL_CNT 25
121#define EVENT_LAST_ID 0x0A22
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700122
123#define MSG_SSID_0 0
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700124#define MSG_SSID_0_LAST 105
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700125#define MSG_SSID_1 500
126#define MSG_SSID_1_LAST 506
127#define MSG_SSID_2 1000
128#define MSG_SSID_2_LAST 1007
129#define MSG_SSID_3 2000
130#define MSG_SSID_3_LAST 2008
131#define MSG_SSID_4 3000
Shalabh Jain321c8b52012-02-22 12:37:06 -0800132#define MSG_SSID_4_LAST 3014
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700133#define MSG_SSID_5 4000
134#define MSG_SSID_5_LAST 4010
135#define MSG_SSID_6 4500
136#define MSG_SSID_6_LAST 4526
137#define MSG_SSID_7 4600
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700138#define MSG_SSID_7_LAST 4615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700139#define MSG_SSID_8 5000
Shalabh Jain321c8b52012-02-22 12:37:06 -0800140#define MSG_SSID_8_LAST 5029
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700141#define MSG_SSID_9 5500
Shalabh Jain321c8b52012-02-22 12:37:06 -0800142#define MSG_SSID_9_LAST 5516
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700143#define MSG_SSID_10 6000
Ravi Aravamudhanb32fcca2013-02-04 18:57:32 -0800144#define MSG_SSID_10_LAST 6080
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700145#define MSG_SSID_11 6500
146#define MSG_SSID_11_LAST 6521
147#define MSG_SSID_12 7000
148#define MSG_SSID_12_LAST 7003
149#define MSG_SSID_13 7100
150#define MSG_SSID_13_LAST 7111
151#define MSG_SSID_14 7200
152#define MSG_SSID_14_LAST 7201
153#define MSG_SSID_15 8000
154#define MSG_SSID_15_LAST 8000
155#define MSG_SSID_16 8500
156#define MSG_SSID_16_LAST 8523
157#define MSG_SSID_17 9000
158#define MSG_SSID_17_LAST 9008
159#define MSG_SSID_18 9500
160#define MSG_SSID_18_LAST 9509
Shalabh Jain321c8b52012-02-22 12:37:06 -0800161#define MSG_SSID_19 10200
162#define MSG_SSID_19_LAST 10210
163#define MSG_SSID_20 10251
164#define MSG_SSID_20_LAST 10255
165#define MSG_SSID_21 10300
166#define MSG_SSID_21_LAST 10300
167#define MSG_SSID_22 10350
Katish Paran313acf02014-09-12 12:39:34 +0530168#define MSG_SSID_22_LAST 10377
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700169#define MSG_SSID_23 10400
170#define MSG_SSID_23_LAST 10414
171#define MSG_SSID_24 0xC000
172#define MSG_SSID_24_LAST 0xC063
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700173
174struct diagpkt_delay_params {
175 void *rsp_ptr;
176 int size;
177 int *num_bytes_ptr;
178};
179
180static const uint32_t msg_bld_masks_0[] = {
181 MSG_LVL_LOW,
182 MSG_LVL_MED,
183 MSG_LVL_MED,
184 MSG_LVL_ERROR,
185 MSG_LVL_LOW,
186 MSG_LVL_MED,
187 MSG_LVL_MED,
188 MSG_LVL_HIGH,
189 MSG_LVL_ERROR,
190 MSG_LVL_LOW,
191 MSG_LVL_ERROR,
192 MSG_LVL_ERROR,
193 MSG_LVL_MED,
194 MSG_LVL_MED,
195 MSG_LVL_MED,
196 MSG_LVL_HIGH,
197 MSG_LVL_HIGH,
198 MSG_LVL_HIGH,
199 MSG_LVL_LOW,
200 MSG_LVL_ERROR,
201 MSG_LVL_LOW,
202 MSG_LVL_MED,
203 MSG_LVL_MED,
204 MSG_LVL_MED,
205 MSG_LVL_MED,
206 MSG_LVL_LOW,
207 MSG_LVL_MED,
208 MSG_LVL_MED,
209 MSG_LVL_MED,
210 MSG_LVL_MED,
211 MSG_LVL_MED|MSG_MASK_7 | \
212 MSG_MASK_8|MSG_MASK_9|MSG_MASK_10|MSG_MASK_11|MSG_MASK_12 | \
213 MSG_MASK_13|MSG_MASK_14|MSG_MASK_15|MSG_MASK_16 | \
214 MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20|MSG_MASK_21,
215 MSG_LVL_MED|MSG_MASK_5 | \
216 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
217 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14| \
218 MSG_MASK_15|MSG_MASK_16|MSG_MASK_17,
219 MSG_LVL_MED,
220 MSG_LVL_MED,
221 MSG_LVL_HIGH,
222 MSG_LVL_HIGH,
223 MSG_LVL_HIGH,
224 MSG_LVL_HIGH,
225 MSG_LVL_MED,
226 MSG_LVL_MED,
227 MSG_LVL_MED|MSG_MASK_5 | \
228 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8,
229 MSG_LVL_LOW,
230 MSG_LVL_LOW,
231 MSG_LVL_HIGH,
232 MSG_LVL_HIGH,
233 MSG_LVL_HIGH,
234 MSG_LVL_MED,
235 MSG_LVL_MED|MSG_MASK_5 | \
236 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
237 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
238 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
239 MSG_MASK_21|MSG_MASK_22|MSG_MASK_23|MSG_MASK_24|MSG_MASK_25,
240 MSG_LVL_MED|MSG_MASK_5 | \
241 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10,
242 MSG_LVL_MED,
243 MSG_LVL_MED,
244 MSG_LVL_LOW,
245 MSG_LVL_MED,
246 MSG_LVL_LOW,
247 MSG_LVL_LOW,
248 MSG_LVL_LOW,
249 MSG_LVL_HIGH,
250 MSG_LVL_LOW,
251 MSG_LVL_LOW,
252 MSG_LVL_LOW | MSG_MASK_5 | \
253 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
254 MSG_LVL_LOW | MSG_MASK_5 | \
255 MSG_MASK_6,
256 MSG_LVL_MED,
257 MSG_LVL_MED,
258 MSG_LVL_LOW,
259 MSG_LVL_MED | MSG_MASK_5 | \
260 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
261 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15 | \
262 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20,
263 MSG_LVL_LOW,
264 MSG_LVL_MED,
265 MSG_LVL_LOW,
266 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800267 MSG_LVL_LOW,
268 MSG_LVL_HIGH,
269 MSG_LVL_HIGH,
270 MSG_LVL_LOW,
271 MSG_LVL_LOW,
272 MSG_LVL_LOW,
273 MSG_LVL_LOW,
274 MSG_LVL_LOW,
275 MSG_LVL_HIGH,
276 MSG_LVL_HIGH,
277 MSG_LVL_LOW,
278 MSG_LVL_LOW,
279 MSG_LVL_LOW,
280 MSG_LVL_LOW,
281 MSG_LVL_LOW,
282 MSG_LVL_LOW,
283 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
284 MSG_LVL_MED,
285 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
286 MSG_LVL_LOW,
287 MSG_LVL_MED,
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700288 MSG_LVL_LOW,
Ravi Aravamudhand5b9a6b2013-03-04 13:24:02 -0800289 MSG_LVL_LOW,
290 MSG_LVL_LOW,
Ravi Aravamudhan17873852013-05-23 17:16:19 -0700291 MSG_LVL_LOW,
292 MSG_LVL_LOW,
293 MSG_LVL_LOW,
294 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700295 MSG_LVL_MED,
296 MSG_LVL_HIGH,
297 MSG_LVL_LOW,
298 MSG_LVL_HIGH,
299 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
300 MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR,
301 MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR,
302 MSG_LVL_MED|MSG_LVL_HIGH,
303 MSG_LVL_MED|MSG_LVL_HIGH
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700304};
305
306static const uint32_t msg_bld_masks_1[] = {
307 MSG_LVL_MED,
308 MSG_LVL_HIGH,
309 MSG_LVL_HIGH,
310 MSG_LVL_LOW,
311 MSG_LVL_HIGH,
312 MSG_LVL_HIGH,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800313 MSG_LVL_HIGH
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700314};
315
316static const uint32_t msg_bld_masks_2[] = {
317 MSG_LVL_MED,
318 MSG_LVL_MED,
319 MSG_LVL_MED,
320 MSG_LVL_MED,
321 MSG_LVL_MED,
322 MSG_LVL_MED|MSG_MASK_5,
323 MSG_LVL_MED,
324 MSG_LVL_MED
325};
326
327static const uint32_t msg_bld_masks_3[] = {
328 MSG_LVL_MED,
329 MSG_LVL_MED,
330 MSG_LVL_MED,
331 MSG_LVL_MED,
332 MSG_LVL_MED,
333 MSG_LVL_MED,
334 MSG_LVL_MED,
335 MSG_LVL_MED,
336 MSG_LVL_MED
337};
338
339static const uint32_t msg_bld_masks_4[] = {
340 MSG_LVL_HIGH,
341 MSG_LVL_HIGH,
342 MSG_LVL_HIGH,
343 MSG_LVL_HIGH,
344 MSG_LVL_HIGH,
345 MSG_LVL_HIGH,
346 MSG_LVL_HIGH,
347 MSG_LVL_HIGH,
348 MSG_LVL_HIGH,
349 MSG_LVL_HIGH,
350 MSG_LVL_HIGH,
351 MSG_LVL_HIGH,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800352 MSG_LVL_HIGH,
353 MSG_LVL_LOW,
354 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700355};
356
357static const uint32_t msg_bld_masks_5[] = {
358 MSG_LVL_HIGH,
359 MSG_LVL_MED,
360 MSG_LVL_HIGH,
361 MSG_LVL_MED,
362 MSG_LVL_MED,
363 MSG_LVL_MED,
364 MSG_LVL_MED,
365 MSG_LVL_MED,
366 MSG_LVL_MED,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800367 MSG_LVL_MED|MSG_LVL_MED|MSG_MASK_5|MSG_MASK_6|MSG_MASK_7| \
368 MSG_MASK_8|MSG_MASK_9,
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700369 MSG_LVL_MED
370};
371
372static const uint32_t msg_bld_masks_6[] = {
373 MSG_LVL_MED,
374 MSG_LVL_MED,
375 MSG_LVL_MED,
376 MSG_LVL_MED,
377 MSG_LVL_MED,
378 MSG_LVL_MED,
379 MSG_LVL_MED,
380 MSG_LVL_LOW,
381 MSG_LVL_LOW,
382 MSG_LVL_LOW,
383 MSG_LVL_LOW,
384 MSG_LVL_LOW,
385 MSG_LVL_LOW,
386 MSG_LVL_LOW,
387 MSG_LVL_LOW,
388 MSG_LVL_LOW,
389 MSG_LVL_LOW,
390 MSG_LVL_LOW,
391 MSG_LVL_LOW,
392 MSG_LVL_LOW,
393 MSG_LVL_LOW,
394 MSG_LVL_LOW,
395 MSG_LVL_LOW,
396 MSG_LVL_LOW,
397 MSG_LVL_LOW,
398 MSG_LVL_LOW,
399 MSG_LVL_LOW
400};
401
402static const uint32_t msg_bld_masks_7[] = {
403 MSG_LVL_MED,
404 MSG_LVL_MED,
405 MSG_LVL_MED,
406 MSG_LVL_MED,
407 MSG_LVL_MED,
408 MSG_LVL_MED,
409 MSG_LVL_MED,
410 MSG_LVL_MED,
411 MSG_LVL_MED,
412 MSG_LVL_MED,
413 MSG_LVL_MED,
414 MSG_LVL_MED,
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700415 MSG_LVL_LOW,
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700416 MSG_LVL_LOW,
417 MSG_LVL_LOW,
418 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700419};
420
421static const uint32_t msg_bld_masks_8[] = {
422 MSG_LVL_MED,
423 MSG_LVL_MED,
424 MSG_LVL_MED,
425 MSG_LVL_MED,
426 MSG_LVL_MED,
427 MSG_LVL_MED,
428 MSG_LVL_MED,
429 MSG_LVL_MED,
430 MSG_LVL_MED,
431 MSG_LVL_MED,
432 MSG_LVL_MED,
433 MSG_LVL_MED,
434 MSG_LVL_MED,
435 MSG_LVL_MED,
436 MSG_LVL_MED,
437 MSG_LVL_MED,
438 MSG_LVL_LOW,
439 MSG_LVL_LOW,
440 MSG_LVL_LOW,
441 MSG_LVL_MED,
442 MSG_LVL_MED,
443 MSG_LVL_MED,
444 MSG_LVL_MED,
445 MSG_LVL_MED,
446 MSG_LVL_MED,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800447 MSG_LVL_MED,
448 MSG_LVL_MED,
449 MSG_LVL_MED,
450 MSG_LVL_MED,
451 MSG_LVL_MED
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700452};
453
454static const uint32_t msg_bld_masks_9[] = {
455 MSG_LVL_MED|MSG_MASK_5,
456 MSG_LVL_MED|MSG_MASK_5,
457 MSG_LVL_MED|MSG_MASK_5,
458 MSG_LVL_MED|MSG_MASK_5,
459 MSG_LVL_MED|MSG_MASK_5,
460 MSG_LVL_MED|MSG_MASK_5,
461 MSG_LVL_MED|MSG_MASK_5,
462 MSG_LVL_MED|MSG_MASK_5,
463 MSG_LVL_MED|MSG_MASK_5,
464 MSG_LVL_MED|MSG_MASK_5,
465 MSG_LVL_MED|MSG_MASK_5,
466 MSG_LVL_MED|MSG_MASK_5,
467 MSG_LVL_MED|MSG_MASK_5,
468 MSG_LVL_MED|MSG_MASK_5,
469 MSG_LVL_MED|MSG_MASK_5,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800470 MSG_LVL_MED|MSG_MASK_5,
471 MSG_LVL_MED|MSG_MASK_5
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700472};
473
474static const uint32_t msg_bld_masks_10[] = {
475 MSG_LVL_MED,
476 MSG_LVL_ERROR,
477 MSG_LVL_LOW,
478 MSG_LVL_LOW|MSG_MASK_5 | \
479 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
480 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
481 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
482 MSG_MASK_21|MSG_MASK_22,
483 MSG_LVL_LOW|MSG_MASK_5,
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|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 MSG_LVL_LOW|MSG_MASK_5,
509 MSG_LVL_LOW|MSG_MASK_5,
510 MSG_LVL_LOW|MSG_MASK_5,
511 MSG_LVL_LOW,
512 MSG_LVL_MED,
513 MSG_LVL_HIGH,
514 MSG_LVL_LOW,
515 MSG_LVL_LOW,
516 MSG_LVL_LOW|MSG_MASK_5,
517 MSG_LVL_LOW|MSG_MASK_0 | MSG_MASK_1 | MSG_MASK_2 | \
518 MSG_MASK_3 | MSG_MASK_4 | MSG_MASK_5 | MSG_MASK_6,
519 MSG_LVL_HIGH,
520 MSG_LVL_LOW,
521 MSG_LVL_LOW,
522 MSG_LVL_LOW,
523 MSG_LVL_LOW,
524 MSG_LVL_LOW,
525 MSG_LVL_LOW,
526 MSG_LVL_LOW,
527 MSG_LVL_LOW,
528 MSG_LVL_LOW,
529 MSG_LVL_LOW,
530 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800531 MSG_LVL_LOW,
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,
Ravi Aravamudhanb32fcca2013-02-04 18:57:32 -0800552 MSG_LVL_LOW,
553 MSG_LVL_LOW,
554 MSG_LVL_LOW,
555 MSG_LVL_LOW,
556 MSG_LVL_LOW,
557 MSG_LVL_LOW,
558 MSG_LVL_LOW,
559 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800560 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700561};
562
563static const uint32_t msg_bld_masks_11[] = {
564 MSG_LVL_LOW,
565 MSG_LVL_LOW,
566 MSG_LVL_LOW,
567 MSG_LVL_LOW,
568 MSG_LVL_LOW,
569 MSG_LVL_LOW,
570 MSG_LVL_LOW,
571 MSG_LVL_LOW,
572 MSG_LVL_LOW,
573 MSG_LVL_LOW,
574 MSG_LVL_LOW,
575 MSG_LVL_LOW,
576 MSG_LVL_LOW,
577 MSG_LVL_LOW,
578 MSG_LVL_LOW,
579 MSG_LVL_LOW,
580 MSG_LVL_LOW,
581 MSG_LVL_LOW,
582 MSG_LVL_LOW,
583 MSG_LVL_LOW,
584 MSG_LVL_LOW,
585 MSG_LVL_LOW,
586};
587
588static const uint32_t msg_bld_masks_12[] = {
589 MSG_LVL_MED,
590 MSG_LVL_MED,
591 MSG_LVL_MED,
592 MSG_LVL_MED,
593};
594
595static const uint32_t msg_bld_masks_13[] = {
596 MSG_LVL_MED,
597 MSG_LVL_MED,
598 MSG_LVL_MED,
599 MSG_LVL_MED,
600 MSG_LVL_MED,
601 MSG_LVL_MED,
602 MSG_LVL_MED,
603 MSG_LVL_MED,
604 MSG_LVL_MED,
605 MSG_LVL_MED,
606 MSG_LVL_MED,
607 MSG_LVL_MED,
608};
609
610static const uint32_t msg_bld_masks_14[] = {
611 MSG_LVL_MED,
612 MSG_LVL_MED,
613};
614
615static const uint32_t msg_bld_masks_15[] = {
616 MSG_LVL_MED
617};
618
619static const uint32_t msg_bld_masks_16[] = {
620 MSG_LVL_LOW,
621 MSG_LVL_LOW,
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_LOW,
635 MSG_LVL_LOW,
636 MSG_LVL_LOW,
637 MSG_LVL_LOW,
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};
645
646static const uint32_t msg_bld_masks_17[] = {
647 MSG_LVL_MED,
648 MSG_LVL_MED,
649 MSG_LVL_MED,
650 MSG_LVL_MED | MSG_MASK_6 | \
651 MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
652 MSG_LVL_MED | MSG_MASK_5 | \
653 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
654 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
655 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17,
656 MSG_LVL_MED,
657 MSG_LVL_MED | MSG_MASK_5 | \
658 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
659 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
660 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17 | \
661 MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 | MSG_MASK_21 | \
662 MSG_MASK_22,
663 MSG_LVL_MED,
664 MSG_LVL_MED,
665};
666
667static const uint32_t msg_bld_masks_18[] = {
668 MSG_LVL_LOW,
669 MSG_LVL_LOW | MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 | \
670 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15 | \
671 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20,
672 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
673 MSG_LVL_LOW | MSG_MASK_5,
674 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
675 MSG_LVL_LOW,
676 MSG_LVL_LOW | MSG_MASK_5 | \
677 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
678 MSG_LVL_LOW,
679 MSG_LVL_LOW,
680 MSG_LVL_LOW
681};
682
Shalabh Jain321c8b52012-02-22 12:37:06 -0800683static const uint32_t msg_bld_masks_19[] = {
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};
696
697static const uint32_t msg_bld_masks_20[] = {
698 MSG_LVL_LOW,
699 MSG_LVL_LOW,
700 MSG_LVL_LOW,
701 MSG_LVL_LOW,
702 MSG_LVL_LOW
703};
704
705static const uint32_t msg_bld_masks_21[] = {
706 MSG_LVL_HIGH
707};
708
709static const uint32_t msg_bld_masks_22[] = {
Dixon Peterson2061f852013-01-22 17:53:05 -0800710 MSG_LVL_LOW,
711 MSG_LVL_LOW,
712 MSG_LVL_LOW,
713 MSG_LVL_LOW,
714 MSG_LVL_LOW,
715 MSG_LVL_LOW,
716 MSG_LVL_LOW,
717 MSG_LVL_LOW,
718 MSG_LVL_LOW,
719 MSG_LVL_LOW,
720 MSG_LVL_LOW,
Ravi Aravamudhanb32fcca2013-02-04 18:57:32 -0800721 MSG_LVL_LOW,
722 MSG_LVL_LOW,
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,
Katish Paran313acf02014-09-12 12:39:34 +0530734 MSG_LVL_LOW,
735 MSG_LVL_LOW,
736 MSG_LVL_LOW,
Dixon Peterson2061f852013-01-22 17:53:05 -0800737 MSG_LVL_LOW
Shalabh Jain321c8b52012-02-22 12:37:06 -0800738};
739
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700740static const uint32_t msg_bld_masks_23[] = {
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};
757
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700758/* LOG CODES */
759
760#define LOG_0 0x0
Ravi Aravamudhan1229d602014-04-23 22:50:51 -0700761#define LOG_1 0x1871
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700762#define LOG_2 0x0
763#define LOG_3 0x0
764#define LOG_4 0x4910
765#define LOG_5 0x5420
766#define LOG_6 0x0
767#define LOG_7 0x74FF
768#define LOG_8 0x0
769#define LOG_9 0x0
770#define LOG_10 0xA38A
771#define LOG_11 0xB201
772#define LOG_12 0x0
773#define LOG_13 0x0
774#define LOG_14 0x0
775#define LOG_15 0x0
776
777#define LOG_GET_ITEM_NUM(xx_code) (xx_code & 0x0FFF)
Shalabh Jain14f480d2012-09-14 10:56:49 -0700778#define LOG_GET_EQUIP_ID(xx_code) ((xx_code & 0xF000) >> 12)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700779
780#endif