comparison gsm-fw/gpf/inc/frm_types.h @ 316:79080922d8e4

GPF: FRAME C sources and include files imported from LoCosto source
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Thu, 10 Apr 2014 04:06:05 +0000
parents
children 06ee56829697
comparison
equal deleted inserted replaced
315:1b4beffc8055 316:79080922d8e4
1 /*
2 +------------------------------------------------------------------------------
3 | File: frm_types.h
4 +------------------------------------------------------------------------------
5 | Copyright 2002 Texas Instruments Berlin, AG
6 | All rights reserved.
7 |
8 | This file is confidential and a trade secret of Texas
9 | Instruments Berlin, AG
10 | The receipt of or possession of this file does not convey
11 | any rights to reproduce or disclose its contents or to
12 | manufacture, use, or sell anything it may describe, in
13 | whole, or in part, without the specific written consent of
14 | Texas Instruments Berlin, AG.
15 +-----------------------------------------------------------------------------
16 | Purpose : Definitions for the Frame
17 +-----------------------------------------------------------------------------
18 */
19
20 #ifndef FRM_TYPES_H
21 #define FRM_TYPES_H
22
23 /*==== INCLUDES =============================================================*/
24
25 #include "pei.h"
26 #include "gdi.h"
27
28 /*==== CONSTANTS ============================================================*/
29
30 /*==== TYPES ================================================================*/
31
32 /*
33 * Type Definitions for Frame Management
34 */
35
36 typedef struct
37 {
38 char Name[RESOURCE_NAMELEN]; /* name of task */
39 T_PEI_FUNC const *PeiTable; /* addresses of pei_functions */
40 USHORT NumOfTimers; /* timers are created in pf_TaskEntry() */
41 USHORT QueueEntries; /* queue is created in pf_TaskEntry() */
42 T_HANDLE * FirstTimerEntry; /* first entry in timer handle array */
43 T_HANDLE MemPoolHandle; /* handle for memory pool access */
44 T_HANDLE QueueHandle; /* own queue handle */
45 T_HANDLE TaskHandle; /* own task handle */
46 U32 Flags; /* active/passive */
47 } T_FRM_TASK_TABLE_ENTRY;
48
49 typedef struct
50 {
51 ULONG TimerValue; /* value of timer */
52 ULONG TimerMode; /* mode of timer */
53 } T_FRM_TIMCFG_TABLE_ENTRY;
54
55 typedef struct
56 {
57 char *Name; /* name of the driver */
58 T_HANDLE ProcessHandle; /* handle of the process to be notified */
59 USHORT UpperDrv; /* handle of driver in the upper layer */
60 USHORT LowerDrv; /* handle of driver in the lower layer */
61 USHORT SignalTo; /* handle of process to be notified at Callback */
62 T_DRV_EXPORT const *DrvInfo;
63 } T_DRV_TABLE_ENTRY;
64
65 typedef struct
66 {
67 unsigned int part_num;
68 unsigned int part_size;
69 void * mem;
70 } T_FRM_PARTITION_POOL_CONFIG;
71
72 typedef struct
73 {
74 char * name;
75 const T_FRM_PARTITION_POOL_CONFIG * grp_config;
76 } T_FRM_PARTITION_GROUP_CONFIG;
77
78 typedef struct
79 {
80 char *Name;
81 ULONG Size;
82 char *PoolAddress;
83 } T_MEMORY_POOL_CONFIG;
84
85 typedef SHORT T_PEI_CREATE ( T_PEI_INFO const **Info );
86
87 typedef struct
88 {
89 T_PEI_CREATE *PeiCreate;
90 char *Name;
91 int Priority;
92 } T_COMPONENT_ADDRESS;
93
94
95 #ifdef MEMORY_SUPERVISION
96
97 typedef struct
98 {
99 ULONG Total; /* total number of elements */
100 ULONG Current; /* current number of elements */
101 ULONG Maximum; /* maximum number of elements */
102 ULONG MaxByteMemory; /* number of allocated bytes at maximum of elements */
103 ULONG MaxPartMemory; /* number of allocated partitions at maximum of elements */
104 } T_COUNTER;
105
106 typedef struct
107 {
108 ULONG UsedSize; /* size of stored primitive */
109 ULONG RequestedSize; /* requested size during allocation */
110 ULONG time; /* time when partition is touched */
111 USHORT Status; /* status of partition */
112 T_HANDLE owner;
113 ULONG PrimOPC; /* opc of primitive that uses this partition */
114 void *ptr;
115 const char *Userfile; /* file that accesses partition */
116 int Line; /* line where partition is accessed */
117 } T_PARTITION_STATUS;
118
119 typedef struct
120 {
121 ULONG PrimOPC; /* opc of primitive that does not fit in partition */
122 const char *Userfile; /* file that access partition */
123 int Line; /* line where partition is accessed */
124 } T_OVERSIZE_STATUS;
125
126 typedef struct
127 {
128 T_PARTITION_STATUS *PartitionStatus;
129 T_OVERSIZE_STATUS *PartitionOversize;
130 T_COUNTER *PartitionCounter;
131 #ifdef OPTIMIZE_POOL
132 T_COUNTER *ByteCounter;
133 T_COUNTER *RangeCounter;
134 #endif /* OPTIMIZE_POOL */
135 } T_PARTITION_POOL_STATUS;
136
137 #endif
138
139 #endif