⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frm_glob.h

📁 是一个手机功能的模拟程序
💻 H
字号:
/* 
+------------------------------------------------------------------------------
|  File:       frm_glob.h
+------------------------------------------------------------------------------
|  Copyright 2002 Texas Instruments Berlin, AG 
|                 All rights reserved. 
| 
|                 This file is confidential and a trade secret of Texas 
|                 Instruments Berlin, AG 
|                 The receipt of or possession of this file does not convey 
|                 any rights to reproduce or disclose its contents or to 
|                 manufacture, use, or sell anything it may describe, in 
|                 whole, or in part, without the specific written consent of 
|                 Texas Instruments Berlin, AG. 
+----------------------------------------------------------------------------- 
|  Purpose :  Global frame tables
+----------------------------------------------------------------------------- 
*/ 

#ifndef FRM_GLOB_H
#define FRM_GLOB_H

/*==== INCLUDES =============================================================*/


/*==== CONSTANTS ============================================================*/


/*==== TYPES ================================================================*/

/*==== VARIABLES ================================================================*/

#ifndef CONFIG_MODULE

extern USHORT MaxEntities;
extern USHORT MaxCommunications;
extern USHORT MaxSimultaneousTimer;
extern USHORT MaxTimer;
extern USHORT MaxSemaphores;
extern USHORT NumberOfPPMPartitions;
extern ULONG  MaxPrimPartSize;
extern USHORT NumOfPrimPools;
extern USHORT NumOfDmemPools;
extern USHORT TextTracePartitionSize;
extern T_VOID_STRUCT *processed_prim[];
extern T_VOID_STRUCT *freed_prim[];
extern T_HANDLE e_running[];
extern T_FRM_TASK_TABLE_ENTRY pf_TaskTable[];

#else

/* -------------- S H A R E D - BEGIN ---------------- */
#ifdef _WIN32_
#pragma data_seg("FRAME_SHARED") 
#endif

extern T_HANDLE PrimGroupHandle;
extern T_HANDLE DmemGroupHandle;
extern T_HANDLE TestGroupHandle;

#ifndef DATA_EXT_RAM

ULONG PrimPool                       [ (PRIMGROUP_SIZE+3)/sizeof(ULONG) ]={0};
ULONG DmemPool                       [ (DMEMGROUP_SIZE+3)/sizeof(ULONG) ]={0};
ULONG TestPool                       [ (TESTGROUP_SIZE+3)/sizeof(ULONG) ]={0};
UBYTE CondatPool                     [ CONDATPOOL_SIZE ];

#endif /* DATA_EXT_RAM */

#ifndef DATA_INT_RAM
 
/* declare on pointer for each entity for ccd error handling */
struct ccd_err_list_head;
struct ccd_err_list_head* ccd_err_list[MAX_ENTITIES+1];

USHORT MaxEntities = MAX_ENTITIES;
USHORT MaxTasks = MAX_OS_TASKS;
USHORT MaxCommunications = MAX_COMMUNICATIONS;
USHORT MaxSimultaneousTimer = MAX_SIMULTANEOUS_TIMER;
USHORT MaxTimer = MAX_TIMER;
USHORT MaxSemaphores = MAX_SEMAPHORES;
USHORT NumberOfPPMPartitions = NUM_OF_PPM_PARTITIONS;
USHORT NumOfPPMPools = NUM_OF_PPM_POOLS;
ULONG  MaxPrimPartSize = MAX_PRIMPART_SIZE;
USHORT TextTracePartitionSize = TEST_PARTITION_1_SIZE;

const USHORT TST_QueueEntries = TST_QUEUE_ENTRIES;

T_FRM_TASK_TABLE_ENTRY pf_TaskTable  [ MAX_ENTITIES + 1 ]={0};
OS_QDATA TimeoutMsg                  [ MAX_OS_TASKS + 1 ]={0}; 
ULONG *Routing                       [ MAX_ENTITIES + 1 ]={0};
ULONG TraceMask                      [ MAX_ENTITIES + 1 ]={0};	
USHORT TracesAborted                 [ MAX_ENTITIES + 1 ]={0};
ULONG SuspendTrace                   [ MAX_ENTITIES + 1 ]={0};
T_VOID_STRUCT *processed_prim        [ MAX_ENTITIES + 1 ]={0};
T_VOID_STRUCT *freed_prim            [ MAX_ENTITIES + 1 ]={0};
T_HANDLE e_running                   [ MAX_ENTITIES + 1 ]={0};
T_DRV_TABLE_ENTRY DrvTable           [ MAX_TST_DRV + 1 ]={0};
T_HANDLE TimerHandleField            [ MAX_TIMER + 1 ]={0};

#ifdef MEMORY_SUPERVISION
ULONG              *Prims            [ NUM_OF_PPM_PARTITIONS ]={0};
T_PARTITION_STATUS PartitionStatus   [ NUM_OF_PPM_PARTITIONS ]={0};		
T_OVERSIZE_STATUS  PartitionOversize [ NUM_OF_PPM_POOLS ]={0};
T_COUNTER	         PartitionCounter  [ NUM_OF_PPM_POOLS ]={0};
#ifdef OPTIMIZE_POOL
T_COUNTER          ByteCounter       [ NUM_OF_PPM_POOLS ]={0};
T_COUNTER          RangeCounter      [ NUM_OF_PPM_RANGES ]={0};
#endif /* OPTIMIZE_POOL */
USHORT NumOfPrimPools = NUM_OF_PRIM_POOLS;
USHORT NumOfDmemPools = NUM_OF_DMEM_POOLS;
#endif  

#ifdef DATA_EXT_RAM

extern ULONG PrimPool   [];
extern ULONG DmemPool   [];
extern ULONG TestPool   [];
extern UBYTE CondatPool [];

#endif /* DATA_EXT_RAM */


T_PARTITION_POOL_GROUP_CONFIG PoolGroupConfig [ MAX_POOL_GROUPS+2 ] =
{
  {
    NULL
  },
  {
    "PRIM",
    1,
    0,
    &PrimGroupHandle,
    {
      { PRIMPART_0_SIZE, PRIMPOOL_0_PARTITIONS, &PrimPool[0] },
      { PRIMPART_1_SIZE, PRIMPOOL_1_PARTITIONS, (char*)&PrimPool[0] + PRIMPOOL_1_OFFSET },
      { PRIMPART_2_SIZE, PRIMPOOL_2_PARTITIONS, (char*)&PrimPool[0] + PRIMPOOL_2_OFFSET },
      { PRIMPART_3_SIZE, PRIMPOOL_3_PARTITIONS, (char*)&PrimPool[0] + PRIMPOOL_3_OFFSET },
      { PRIMPART_4_SIZE, PRIMPOOL_4_PARTITIONS, (char*)&PrimPool[0] + PRIMPOOL_4_OFFSET },
      { PRIMPART_5_SIZE, PRIMPOOL_5_PARTITIONS, (char*)&PrimPool[0] + PRIMPOOL_5_OFFSET },
      { 0 }
    }
  },
	{
    "TEST",
    0,
    0,
    &TestGroupHandle,
    {
      { TESTPART_0_SIZE, TESTPOOL_0_PARTITIONS, &TestPool[0] },
      { TESTPART_1_SIZE, TESTPOOL_1_PARTITIONS, (char*)&TestPool[0] + TESTPOOL_1_OFFSET },
      { TESTPART_2_SIZE, TESTPOOL_2_PARTITIONS, (char*)&TestPool[0] + TESTPOOL_2_OFFSET },
      { TESTPART_3_SIZE, TESTPOOL_3_PARTITIONS, (char*)&TestPool[0] + TESTPOOL_3_OFFSET },
      { TESTPART_4_SIZE, TESTPOOL_4_PARTITIONS, (char*)&TestPool[0] + TESTPOOL_4_OFFSET },
      { TESTPART_5_SIZE, TESTPOOL_5_PARTITIONS, (char*)&TestPool[0] + TESTPOOL_5_OFFSET },
      { 0 }
    }
  },
  {
    "DMEM",
    1,
    0,
    &DmemGroupHandle,
    {
      { DMEMPART_0_SIZE, DMEMPOOL_0_PARTITIONS, &DmemPool[0] },
      { DMEMPART_1_SIZE, DMEMPOOL_1_PARTITIONS, (char*)&DmemPool[0] + DMEMPOOL_1_OFFSET },
      { DMEMPART_2_SIZE, DMEMPOOL_2_PARTITIONS, (char*)&DmemPool[0] + DMEMPOOL_2_OFFSET },
      { DMEMPART_3_SIZE, DMEMPOOL_3_PARTITIONS, (char*)&DmemPool[0] + DMEMPOOL_3_OFFSET },
      { DMEMPART_4_SIZE, DMEMPOOL_4_PARTITIONS, (char*)&DmemPool[0] + DMEMPOOL_4_OFFSET },
      { DMEMPART_5_SIZE, DMEMPOOL_5_PARTITIONS, (char*)&DmemPool[0] + DMEMPOOL_5_OFFSET },
      { 0 }
    }
  },
  {
    NULL
  }
};


T_MEMORY_POOL_CONFIG CondatPoolConfig =
    { "CONDAT", CONDATPOOL_SIZE, &CondatPool[0] };

#endif /* DATA_INT_RAM */

#ifdef _WIN32_
#pragma data_seg()
#endif
/* -------------- S H A R E D - END ---------------- */

#endif /* CONFIG_MODULE */



#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -