📄 pei.h
字号:
/*
+------------------------------------------------------------------------------
| File: pei.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 : Protocol Entity Interface exported definitions.
+-----------------------------------------------------------------------------
*/
#ifndef __PEI_H__
#define __PEI_H__
/*==== INCLUDES ============================================================*/
#include <stddef.h>
/*==== CONSTANTS ===========================================================*/
#define PEI_OK 0
#define PEI_ERROR (-1)
/*==== TYPES ===============================================================*/
typedef int T_PEI_RETURN;
typedef char * T_PEI_CONFIG;
typedef void T_PEI_MONITOR;
/*
* types and macros for pei-jumptable processing
*/
#define PALLOC_TRANSITION /* to reinsert the sdu pointer in pei_primitive */
#define NO_COPY_ROUTING /* has to be set for frame version > 2.5.0 */
/*
* for definitions of jumptables
*/
typedef void (*T_VOID_FUNC)();
typedef short (*T_SHORT_FUNC)();
typedef struct { T_VOID_FUNC func; size_t size; size_t soff; ULONG opc; } T_FUNC;
#define MAK_FUNC_S(FUNC,OPC) { (T_VOID_FUNC)FUNC, sizeof(T_##OPC), offsetof(T_##OPC,sdu), OPC }
#define MAK_FUNC_0(FUNC,OPC) { (T_VOID_FUNC)FUNC, sizeof(T_##OPC), 0 , OPC }
#define MAK_FUNC_N(FUNC,OPC) { (T_VOID_FUNC)FUNC, 0 , 0 , 0 }
#define TAB_SIZE(T) (sizeof T / sizeof *T)
typedef struct
{
SHORT (*pei_init)(T_HANDLE);
SHORT (*pei_exit)(void);
SHORT (*pei_primitive)(void*);
SHORT (*pei_timeout)(USHORT);
SHORT (*pei_signal)(ULONG,void*);
SHORT (*pei_run)(T_HANDLE,T_HANDLE);
SHORT (*pei_config)(char*);
SHORT (*pei_monitor)(void**);
} T_PEI_FUNC;
typedef struct
{
char const *Name;
T_PEI_FUNC PeiTable;
ULONG StackSize;
USHORT QueueEntries;
USHORT Priority;
USHORT NumOfTimers;
UBYTE Flags;
} T_PEI_INFO;
#endif /* __PEI_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -