blob: fbffdd2db8c958fdd4a7082587f76bf77e206807 [file] [log] [blame]
Shalabh Jain10f5f432012-01-11 11:45:44 +05301/* Copyright (c) 2008-2012, Code Aurora Forum. 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
Shalabh Jain69890aa2011-10-10 12:59:16 -070021#define USER_SPACE_LOG_TYPE 32
Shalabh Jain1c99e4c2012-03-26 18:47:59 -070022#define DCI_DATA_TYPE 64
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070023#define USB_MODE 1
24#define MEMORY_DEVICE_MODE 2
25#define NO_LOGGING_MODE 3
Shalabh Jain69890aa2011-10-10 12:59:16 -070026#define UART_MODE 4
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070027
28/* different values that go in for diag_data_type */
29#define DATA_TYPE_EVENT 0
30#define DATA_TYPE_F3 1
31#define DATA_TYPE_LOG 2
32#define DATA_TYPE_RESPONSE 3
33
34/* Different IOCTL values */
35#define DIAG_IOCTL_COMMAND_REG 0
36#define DIAG_IOCTL_SWITCH_LOGGING 7
37#define DIAG_IOCTL_GET_DELAYED_RSP_ID 8
38#define DIAG_IOCTL_LSM_DEINIT 9
Shalabh Jain1c99e4c2012-03-26 18:47:59 -070039#define DIAG_IOCTL_DCI_INIT 20
40#define DIAG_IOCTL_DCI_DEINIT 21
41#define DIAG_IOCTL_DCI_SUPPORT 22
42#define DIAG_IOCTL_DCI_REG 23
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070043
Dixon Petersonb4618a42012-02-29 18:56:31 -080044/* PC Tools IDs */
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070045#define APQ8060_TOOLS_ID 4062
46#define AO8960_TOOLS_ID 4064
Shalabh Jainfb8e3c12011-10-19 17:29:42 -070047#define APQ8064_TOOLS_ID 4072
Dixon Petersonb4618a42012-02-29 18:56:31 -080048#define MSM8625_TOOLS_ID 4075
Shalabh Jaina7557842012-02-01 20:25:03 +053049#define MSM8930_TOOLS_ID 4076
50#define MSM8630_TOOLS_ID 4077
51#define MSM8230_TOOLS_ID 4078
52#define APQ8030_TOOLS_ID 4079
53#define MSM8627_TOOLS_ID 4080
54#define MSM8227_TOOLS_ID 4081
Dixon Petersona2dd7352012-05-21 17:37:10 -070055#define MSM8974_TOOLS_ID 4083
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070056
57#define MSG_MASK_0 (0x00000001)
58#define MSG_MASK_1 (0x00000002)
59#define MSG_MASK_2 (0x00000004)
60#define MSG_MASK_3 (0x00000008)
61#define MSG_MASK_4 (0x00000010)
62#define MSG_MASK_5 (0x00000020)
63#define MSG_MASK_6 (0x00000040)
64#define MSG_MASK_7 (0x00000080)
65#define MSG_MASK_8 (0x00000100)
66#define MSG_MASK_9 (0x00000200)
67#define MSG_MASK_10 (0x00000400)
68#define MSG_MASK_11 (0x00000800)
69#define MSG_MASK_12 (0x00001000)
70#define MSG_MASK_13 (0x00002000)
71#define MSG_MASK_14 (0x00004000)
72#define MSG_MASK_15 (0x00008000)
73#define MSG_MASK_16 (0x00010000)
74#define MSG_MASK_17 (0x00020000)
75#define MSG_MASK_18 (0x00040000)
76#define MSG_MASK_19 (0x00080000)
77#define MSG_MASK_20 (0x00100000)
78#define MSG_MASK_21 (0x00200000)
79#define MSG_MASK_22 (0x00400000)
80#define MSG_MASK_23 (0x00800000)
81#define MSG_MASK_24 (0x01000000)
82#define MSG_MASK_25 (0x02000000)
83#define MSG_MASK_26 (0x04000000)
84#define MSG_MASK_27 (0x08000000)
85#define MSG_MASK_28 (0x10000000)
86#define MSG_MASK_29 (0x20000000)
87#define MSG_MASK_30 (0x40000000)
88#define MSG_MASK_31 (0x80000000)
89
90/* These masks are to be used for support of all legacy messages in the sw.
91The user does not need to remember the names as they will be embedded in
92the appropriate macros. */
93#define MSG_LEGACY_LOW MSG_MASK_0
94#define MSG_LEGACY_MED MSG_MASK_1
95#define MSG_LEGACY_HIGH MSG_MASK_2
96#define MSG_LEGACY_ERROR MSG_MASK_3
97#define MSG_LEGACY_FATAL MSG_MASK_4
98
99/* Legacy Message Priorities */
100#define MSG_LVL_FATAL (MSG_LEGACY_FATAL)
101#define MSG_LVL_ERROR (MSG_LEGACY_ERROR | MSG_LVL_FATAL)
102#define MSG_LVL_HIGH (MSG_LEGACY_HIGH | MSG_LVL_ERROR)
103#define MSG_LVL_MED (MSG_LEGACY_MED | MSG_LVL_HIGH)
104#define MSG_LVL_LOW (MSG_LEGACY_LOW | MSG_LVL_MED)
105
106#define MSG_LVL_NONE 0
107
108/* This needs to be modified manually now, when we add
109 a new RANGE of SSIDs to the msg_mask_tbl */
Shalabh Jain44b79b72012-06-15 13:39:27 -0700110#define MSG_MASK_TBL_CNT 24
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700111#define EVENT_LAST_ID 0x08AD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700112
113#define MSG_SSID_0 0
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700114#define MSG_SSID_0_LAST 91
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700115#define MSG_SSID_1 500
116#define MSG_SSID_1_LAST 506
117#define MSG_SSID_2 1000
118#define MSG_SSID_2_LAST 1007
119#define MSG_SSID_3 2000
120#define MSG_SSID_3_LAST 2008
121#define MSG_SSID_4 3000
Shalabh Jain321c8b52012-02-22 12:37:06 -0800122#define MSG_SSID_4_LAST 3014
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700123#define MSG_SSID_5 4000
124#define MSG_SSID_5_LAST 4010
125#define MSG_SSID_6 4500
126#define MSG_SSID_6_LAST 4526
127#define MSG_SSID_7 4600
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700128#define MSG_SSID_7_LAST 4613
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700129#define MSG_SSID_8 5000
Shalabh Jain321c8b52012-02-22 12:37:06 -0800130#define MSG_SSID_8_LAST 5029
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700131#define MSG_SSID_9 5500
Shalabh Jain321c8b52012-02-22 12:37:06 -0800132#define MSG_SSID_9_LAST 5516
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700133#define MSG_SSID_10 6000
Shalabh Jain321c8b52012-02-22 12:37:06 -0800134#define MSG_SSID_10_LAST 6072
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700135#define MSG_SSID_11 6500
136#define MSG_SSID_11_LAST 6521
137#define MSG_SSID_12 7000
138#define MSG_SSID_12_LAST 7003
139#define MSG_SSID_13 7100
140#define MSG_SSID_13_LAST 7111
141#define MSG_SSID_14 7200
142#define MSG_SSID_14_LAST 7201
143#define MSG_SSID_15 8000
144#define MSG_SSID_15_LAST 8000
145#define MSG_SSID_16 8500
146#define MSG_SSID_16_LAST 8523
147#define MSG_SSID_17 9000
148#define MSG_SSID_17_LAST 9008
149#define MSG_SSID_18 9500
150#define MSG_SSID_18_LAST 9509
Shalabh Jain321c8b52012-02-22 12:37:06 -0800151#define MSG_SSID_19 10200
152#define MSG_SSID_19_LAST 10210
153#define MSG_SSID_20 10251
154#define MSG_SSID_20_LAST 10255
155#define MSG_SSID_21 10300
156#define MSG_SSID_21_LAST 10300
157#define MSG_SSID_22 10350
158#define MSG_SSID_22_LAST 10361
Shalabh Jain44b79b72012-06-15 13:39:27 -0700159#define MSG_SSID_23 0xC000
160#define MSG_SSID_23_LAST 0xC063
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700161
162struct diagpkt_delay_params {
163 void *rsp_ptr;
164 int size;
165 int *num_bytes_ptr;
166};
167
168static const uint32_t msg_bld_masks_0[] = {
169 MSG_LVL_LOW,
170 MSG_LVL_MED,
171 MSG_LVL_MED,
172 MSG_LVL_ERROR,
173 MSG_LVL_LOW,
174 MSG_LVL_MED,
175 MSG_LVL_MED,
176 MSG_LVL_HIGH,
177 MSG_LVL_ERROR,
178 MSG_LVL_LOW,
179 MSG_LVL_ERROR,
180 MSG_LVL_ERROR,
181 MSG_LVL_MED,
182 MSG_LVL_MED,
183 MSG_LVL_MED,
184 MSG_LVL_HIGH,
185 MSG_LVL_HIGH,
186 MSG_LVL_HIGH,
187 MSG_LVL_LOW,
188 MSG_LVL_ERROR,
189 MSG_LVL_LOW,
190 MSG_LVL_MED,
191 MSG_LVL_MED,
192 MSG_LVL_MED,
193 MSG_LVL_MED,
194 MSG_LVL_LOW,
195 MSG_LVL_MED,
196 MSG_LVL_MED,
197 MSG_LVL_MED,
198 MSG_LVL_MED,
199 MSG_LVL_MED|MSG_MASK_7 | \
200 MSG_MASK_8|MSG_MASK_9|MSG_MASK_10|MSG_MASK_11|MSG_MASK_12 | \
201 MSG_MASK_13|MSG_MASK_14|MSG_MASK_15|MSG_MASK_16 | \
202 MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20|MSG_MASK_21,
203 MSG_LVL_MED|MSG_MASK_5 | \
204 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
205 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14| \
206 MSG_MASK_15|MSG_MASK_16|MSG_MASK_17,
207 MSG_LVL_MED,
208 MSG_LVL_MED,
209 MSG_LVL_HIGH,
210 MSG_LVL_HIGH,
211 MSG_LVL_HIGH,
212 MSG_LVL_HIGH,
213 MSG_LVL_MED,
214 MSG_LVL_MED,
215 MSG_LVL_MED|MSG_MASK_5 | \
216 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8,
217 MSG_LVL_LOW,
218 MSG_LVL_LOW,
219 MSG_LVL_HIGH,
220 MSG_LVL_HIGH,
221 MSG_LVL_HIGH,
222 MSG_LVL_MED,
223 MSG_LVL_MED|MSG_MASK_5 | \
224 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
225 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
226 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
227 MSG_MASK_21|MSG_MASK_22|MSG_MASK_23|MSG_MASK_24|MSG_MASK_25,
228 MSG_LVL_MED|MSG_MASK_5 | \
229 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10,
230 MSG_LVL_MED,
231 MSG_LVL_MED,
232 MSG_LVL_LOW,
233 MSG_LVL_MED,
234 MSG_LVL_LOW,
235 MSG_LVL_LOW,
236 MSG_LVL_LOW,
237 MSG_LVL_HIGH,
238 MSG_LVL_LOW,
239 MSG_LVL_LOW,
240 MSG_LVL_LOW | MSG_MASK_5 | \
241 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8,
242 MSG_LVL_LOW | MSG_MASK_5 | \
243 MSG_MASK_6,
244 MSG_LVL_MED,
245 MSG_LVL_MED,
246 MSG_LVL_LOW,
247 MSG_LVL_MED | MSG_MASK_5 | \
248 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
249 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15 | \
250 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20,
251 MSG_LVL_LOW,
252 MSG_LVL_MED,
253 MSG_LVL_LOW,
254 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800255 MSG_LVL_LOW,
256 MSG_LVL_HIGH,
257 MSG_LVL_HIGH,
258 MSG_LVL_LOW,
259 MSG_LVL_LOW,
260 MSG_LVL_LOW,
261 MSG_LVL_LOW,
262 MSG_LVL_LOW,
263 MSG_LVL_HIGH,
264 MSG_LVL_HIGH,
265 MSG_LVL_LOW,
266 MSG_LVL_LOW,
267 MSG_LVL_LOW,
268 MSG_LVL_LOW,
269 MSG_LVL_LOW,
270 MSG_LVL_LOW,
271 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
272 MSG_LVL_MED,
273 MSG_LVL_LOW|MSG_LVL_MED|MSG_LVL_HIGH|MSG_LVL_ERROR|MSG_LVL_FATAL,
274 MSG_LVL_LOW,
275 MSG_LVL_MED,
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700276 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800277 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700278};
279
280static const uint32_t msg_bld_masks_1[] = {
281 MSG_LVL_MED,
282 MSG_LVL_HIGH,
283 MSG_LVL_HIGH,
284 MSG_LVL_LOW,
285 MSG_LVL_HIGH,
286 MSG_LVL_HIGH,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800287 MSG_LVL_HIGH
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700288};
289
290static const uint32_t msg_bld_masks_2[] = {
291 MSG_LVL_MED,
292 MSG_LVL_MED,
293 MSG_LVL_MED,
294 MSG_LVL_MED,
295 MSG_LVL_MED,
296 MSG_LVL_MED|MSG_MASK_5,
297 MSG_LVL_MED,
298 MSG_LVL_MED
299};
300
301static const uint32_t msg_bld_masks_3[] = {
302 MSG_LVL_MED,
303 MSG_LVL_MED,
304 MSG_LVL_MED,
305 MSG_LVL_MED,
306 MSG_LVL_MED,
307 MSG_LVL_MED,
308 MSG_LVL_MED,
309 MSG_LVL_MED,
310 MSG_LVL_MED
311};
312
313static const uint32_t msg_bld_masks_4[] = {
314 MSG_LVL_HIGH,
315 MSG_LVL_HIGH,
316 MSG_LVL_HIGH,
317 MSG_LVL_HIGH,
318 MSG_LVL_HIGH,
319 MSG_LVL_HIGH,
320 MSG_LVL_HIGH,
321 MSG_LVL_HIGH,
322 MSG_LVL_HIGH,
323 MSG_LVL_HIGH,
324 MSG_LVL_HIGH,
325 MSG_LVL_HIGH,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800326 MSG_LVL_HIGH,
327 MSG_LVL_LOW,
328 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700329};
330
331static const uint32_t msg_bld_masks_5[] = {
332 MSG_LVL_HIGH,
333 MSG_LVL_MED,
334 MSG_LVL_HIGH,
335 MSG_LVL_MED,
336 MSG_LVL_MED,
337 MSG_LVL_MED,
338 MSG_LVL_MED,
339 MSG_LVL_MED,
340 MSG_LVL_MED,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800341 MSG_LVL_MED|MSG_LVL_MED|MSG_MASK_5|MSG_MASK_6|MSG_MASK_7| \
342 MSG_MASK_8|MSG_MASK_9,
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700343 MSG_LVL_MED
344};
345
346static const uint32_t msg_bld_masks_6[] = {
347 MSG_LVL_MED,
348 MSG_LVL_MED,
349 MSG_LVL_MED,
350 MSG_LVL_MED,
351 MSG_LVL_MED,
352 MSG_LVL_MED,
353 MSG_LVL_MED,
354 MSG_LVL_LOW,
355 MSG_LVL_LOW,
356 MSG_LVL_LOW,
357 MSG_LVL_LOW,
358 MSG_LVL_LOW,
359 MSG_LVL_LOW,
360 MSG_LVL_LOW,
361 MSG_LVL_LOW,
362 MSG_LVL_LOW,
363 MSG_LVL_LOW,
364 MSG_LVL_LOW,
365 MSG_LVL_LOW,
366 MSG_LVL_LOW,
367 MSG_LVL_LOW,
368 MSG_LVL_LOW,
369 MSG_LVL_LOW,
370 MSG_LVL_LOW,
371 MSG_LVL_LOW,
372 MSG_LVL_LOW,
373 MSG_LVL_LOW
374};
375
376static const uint32_t msg_bld_masks_7[] = {
377 MSG_LVL_MED,
378 MSG_LVL_MED,
379 MSG_LVL_MED,
380 MSG_LVL_MED,
381 MSG_LVL_MED,
382 MSG_LVL_MED,
383 MSG_LVL_MED,
384 MSG_LVL_MED,
385 MSG_LVL_MED,
386 MSG_LVL_MED,
387 MSG_LVL_MED,
388 MSG_LVL_MED,
Shalabh Jainc00dd9b2012-06-23 14:34:18 -0700389 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800390 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700391};
392
393static const uint32_t msg_bld_masks_8[] = {
394 MSG_LVL_MED,
395 MSG_LVL_MED,
396 MSG_LVL_MED,
397 MSG_LVL_MED,
398 MSG_LVL_MED,
399 MSG_LVL_MED,
400 MSG_LVL_MED,
401 MSG_LVL_MED,
402 MSG_LVL_MED,
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_LOW,
411 MSG_LVL_LOW,
412 MSG_LVL_LOW,
413 MSG_LVL_MED,
414 MSG_LVL_MED,
415 MSG_LVL_MED,
416 MSG_LVL_MED,
417 MSG_LVL_MED,
418 MSG_LVL_MED,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800419 MSG_LVL_MED,
420 MSG_LVL_MED,
421 MSG_LVL_MED,
422 MSG_LVL_MED,
423 MSG_LVL_MED
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700424};
425
426static const uint32_t msg_bld_masks_9[] = {
427 MSG_LVL_MED|MSG_MASK_5,
428 MSG_LVL_MED|MSG_MASK_5,
429 MSG_LVL_MED|MSG_MASK_5,
430 MSG_LVL_MED|MSG_MASK_5,
431 MSG_LVL_MED|MSG_MASK_5,
432 MSG_LVL_MED|MSG_MASK_5,
433 MSG_LVL_MED|MSG_MASK_5,
434 MSG_LVL_MED|MSG_MASK_5,
435 MSG_LVL_MED|MSG_MASK_5,
436 MSG_LVL_MED|MSG_MASK_5,
437 MSG_LVL_MED|MSG_MASK_5,
438 MSG_LVL_MED|MSG_MASK_5,
439 MSG_LVL_MED|MSG_MASK_5,
440 MSG_LVL_MED|MSG_MASK_5,
441 MSG_LVL_MED|MSG_MASK_5,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800442 MSG_LVL_MED|MSG_MASK_5,
443 MSG_LVL_MED|MSG_MASK_5
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700444};
445
446static const uint32_t msg_bld_masks_10[] = {
447 MSG_LVL_MED,
448 MSG_LVL_ERROR,
449 MSG_LVL_LOW,
450 MSG_LVL_LOW|MSG_MASK_5 | \
451 MSG_MASK_6|MSG_MASK_7|MSG_MASK_8|MSG_MASK_9|MSG_MASK_10| \
452 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15| \
453 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20| \
454 MSG_MASK_21|MSG_MASK_22,
455 MSG_LVL_LOW|MSG_MASK_5,
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|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,
484 MSG_LVL_MED,
485 MSG_LVL_HIGH,
486 MSG_LVL_LOW,
487 MSG_LVL_LOW,
488 MSG_LVL_LOW|MSG_MASK_5,
489 MSG_LVL_LOW|MSG_MASK_0 | MSG_MASK_1 | MSG_MASK_2 | \
490 MSG_MASK_3 | MSG_MASK_4 | MSG_MASK_5 | MSG_MASK_6,
491 MSG_LVL_HIGH,
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 MSG_LVL_LOW,
499 MSG_LVL_LOW,
500 MSG_LVL_LOW,
501 MSG_LVL_LOW,
502 MSG_LVL_LOW,
Shalabh Jain321c8b52012-02-22 12:37:06 -0800503 MSG_LVL_LOW,
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_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_MED,
524 MSG_LVL_LOW
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700525};
526
527static const uint32_t msg_bld_masks_11[] = {
528 MSG_LVL_LOW,
529 MSG_LVL_LOW,
530 MSG_LVL_LOW,
531 MSG_LVL_LOW,
532 MSG_LVL_LOW,
533 MSG_LVL_LOW,
534 MSG_LVL_LOW,
535 MSG_LVL_LOW,
536 MSG_LVL_LOW,
537 MSG_LVL_LOW,
538 MSG_LVL_LOW,
539 MSG_LVL_LOW,
540 MSG_LVL_LOW,
541 MSG_LVL_LOW,
542 MSG_LVL_LOW,
543 MSG_LVL_LOW,
544 MSG_LVL_LOW,
545 MSG_LVL_LOW,
546 MSG_LVL_LOW,
547 MSG_LVL_LOW,
548 MSG_LVL_LOW,
549 MSG_LVL_LOW,
550};
551
552static const uint32_t msg_bld_masks_12[] = {
553 MSG_LVL_MED,
554 MSG_LVL_MED,
555 MSG_LVL_MED,
556 MSG_LVL_MED,
557};
558
559static const uint32_t msg_bld_masks_13[] = {
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_MED,
569 MSG_LVL_MED,
570 MSG_LVL_MED,
571 MSG_LVL_MED,
572};
573
574static const uint32_t msg_bld_masks_14[] = {
575 MSG_LVL_MED,
576 MSG_LVL_MED,
577};
578
579static const uint32_t msg_bld_masks_15[] = {
580 MSG_LVL_MED
581};
582
583static const uint32_t msg_bld_masks_16[] = {
584 MSG_LVL_LOW,
585 MSG_LVL_LOW,
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,
595 MSG_LVL_LOW,
596 MSG_LVL_LOW,
597 MSG_LVL_LOW,
598 MSG_LVL_LOW,
599 MSG_LVL_LOW,
600 MSG_LVL_LOW,
601 MSG_LVL_LOW,
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};
609
610static const uint32_t msg_bld_masks_17[] = {
611 MSG_LVL_MED,
612 MSG_LVL_MED,
613 MSG_LVL_MED,
614 MSG_LVL_MED | MSG_MASK_6 | \
615 MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
616 MSG_LVL_MED | MSG_MASK_5 | \
617 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
618 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
619 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17,
620 MSG_LVL_MED,
621 MSG_LVL_MED | MSG_MASK_5 | \
622 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9 | \
623 MSG_MASK_10 | MSG_MASK_11 | MSG_MASK_12 | MSG_MASK_13 | \
624 MSG_MASK_14 | MSG_MASK_15 | MSG_MASK_16 | MSG_MASK_17 | \
625 MSG_MASK_18 | MSG_MASK_19 | MSG_MASK_20 | MSG_MASK_21 | \
626 MSG_MASK_22,
627 MSG_LVL_MED,
628 MSG_LVL_MED,
629};
630
631static const uint32_t msg_bld_masks_18[] = {
632 MSG_LVL_LOW,
633 MSG_LVL_LOW | MSG_MASK_8 | MSG_MASK_9 | MSG_MASK_10 | \
634 MSG_MASK_11|MSG_MASK_12|MSG_MASK_13|MSG_MASK_14|MSG_MASK_15 | \
635 MSG_MASK_16|MSG_MASK_17|MSG_MASK_18|MSG_MASK_19|MSG_MASK_20,
636 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
637 MSG_LVL_LOW | MSG_MASK_5,
638 MSG_LVL_LOW | MSG_MASK_5 | MSG_MASK_6,
639 MSG_LVL_LOW,
640 MSG_LVL_LOW | MSG_MASK_5 | \
641 MSG_MASK_6 | MSG_MASK_7 | MSG_MASK_8 | MSG_MASK_9,
642 MSG_LVL_LOW,
643 MSG_LVL_LOW,
644 MSG_LVL_LOW
645};
646
Shalabh Jain321c8b52012-02-22 12:37:06 -0800647static const uint32_t msg_bld_masks_19[] = {
648 MSG_LVL_LOW,
649 MSG_LVL_LOW,
650 MSG_LVL_LOW,
651 MSG_LVL_LOW,
652 MSG_LVL_LOW,
653 MSG_LVL_LOW,
654 MSG_LVL_LOW,
655 MSG_LVL_LOW,
656 MSG_LVL_LOW,
657 MSG_LVL_LOW,
658 MSG_LVL_LOW
659};
660
661static const uint32_t msg_bld_masks_20[] = {
662 MSG_LVL_LOW,
663 MSG_LVL_LOW,
664 MSG_LVL_LOW,
665 MSG_LVL_LOW,
666 MSG_LVL_LOW
667};
668
669static const uint32_t msg_bld_masks_21[] = {
670 MSG_LVL_HIGH
671};
672
673static const uint32_t msg_bld_masks_22[] = {
674 MSG_LVL_HIGH,
675 MSG_LVL_HIGH,
676 MSG_LVL_HIGH,
677 MSG_LVL_HIGH,
678 MSG_LVL_HIGH,
679 MSG_LVL_HIGH,
680 MSG_LVL_HIGH,
681 MSG_LVL_HIGH,
682 MSG_LVL_HIGH,
683 MSG_LVL_HIGH,
684 MSG_LVL_HIGH,
685 MSG_LVL_HIGH
686};
687
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700688/* LOG CODES */
689
690#define LOG_0 0x0
Shalabh Jainfbf3bdc2012-03-16 21:02:50 -0700691#define LOG_1 0x15A7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700692#define LOG_2 0x0
693#define LOG_3 0x0
694#define LOG_4 0x4910
695#define LOG_5 0x5420
696#define LOG_6 0x0
697#define LOG_7 0x74FF
698#define LOG_8 0x0
699#define LOG_9 0x0
700#define LOG_10 0xA38A
701#define LOG_11 0xB201
702#define LOG_12 0x0
703#define LOG_13 0x0
704#define LOG_14 0x0
705#define LOG_15 0x0
706
707#define LOG_GET_ITEM_NUM(xx_code) (xx_code & 0x0FFF)
708
709#endif