0
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /********************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 /* File Name: dar_structs_i.h */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 /* Purpose: This file contains constants, data type, and data */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 /* structures that are used by the diagnose's task. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 /* Note: */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 /* None. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 /* Revision History: */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /* 26 september 01 Stephanie Gerthoux Create */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /* (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 /* */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 /********************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 #include "rv/rv_defined_swe.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 #ifdef RVM_DAR_SWE
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 #ifndef _DAR_STRUCTS_I_
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 #define _DAR_STRUCTS_I_
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 #include "rvm/rvm_gen.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #include "dar/dar_gen.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #include "dar/dar_const_i.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 #ifdef __cplusplus
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 extern "C"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 /* ***************** DAR internal structures ********************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 /* Diagnose Use parameter with masks for warning and debug messages */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 UINT16 group_nb;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 UINT16 mask_warning;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 UINT16 mask_debug;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 }T_DAR_FILTER_PARAMETER;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 /* Diagnose Use Messages parameter (used to send messages in DAR mailbox) */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 UINT16 group_nb;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 UINT16 mask;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 UINT8 level;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 }T_DAR_MSG_PARAM;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 /* Diagnose write data messages paremeters*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 T_DAR_INFO *char_p;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 T_DAR_FORMAT data_format;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 T_DAR_LEVEL level;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 T_DAR_USE_ID use_id;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 }T_DAR_WRITE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /****************************** DAR'S ENVIRONMENT **************************** */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 /* Define a structure used to store all information related to the DAR's task */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 /* & memory bank identifiers. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 /* DAR addr ID. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 T_RVF_ADDR_ID addrId;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 /* DAR FFS addr ID */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 T_RVF_ADDR_ID ffs_addrId;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 /* DAR memory bank. */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 T_RVF_MB_ID mb_dar;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 /* DAR state */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 UINT8 state;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 /* data format: ASCII or binary */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 T_DAR_FORMAT format;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 /* data level : Error/Warning/ Debug */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 T_DAR_LEVEL diagnose_level;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 /* DAR use id */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 T_DAR_USE_ID dar_use_id;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 /* return path of the function that previously start the diagnose */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 T_RV_RETURN return_path;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 /* Pointer to the error function */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 T_RVM_RETURN (*callBackFctError) (T_RVM_NAME SWEntName,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 T_RVM_RETURN errorCause,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 T_RVM_ERROR_TYPE errorType,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 T_RVM_STRING errorMsg);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 /* Pointer to the DAR callback function */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 T_RV_RET (*entity_dar_callback)(T_DAR_BUFFER buffer_p,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 UINT16 length);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 /* Filter Array that contains the group and the masks ( Warning, debug) */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 /* in order to filter messages */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 T_DAR_FILTER_PARAMETER dar_filter_array[DAR_MAX_GROUP_NB];
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 /* index to indicate the group position in the dar_filter_array */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 UINT16 index;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 /* free index to indicate the first free group position in the */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 /* dar_filter_array ( to add a new group in the array) */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 UINT16 free_index;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 /* Buffer to store diagnose data*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 } T_DAR_ENV_CTRL_BLK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 #ifdef __cplusplus
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 #endif /* #ifdef RVM_DAR_SWE */
|