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

📄 easiglobal.h

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 H
字号:
/* ============================================================================
*
*            TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION
*
*   Property of Texas Instruments
*   For Unrestricted Internal Use Only 
*   Unauthorized reproduction and/or distribution is strictly prohibited.
*   This product is protected under copyright law and trade secret law as an unpublished work.
*   Created 2003, (C) Copyright 2003 Texas Instruments.  All rights reserved.
*
*   Component:     Easi Global Defines used by both Easi C and Easi checker
*    
*   Filename:      EasiGlobal.h           
*    
*   Description:   Header file required by beach auto generated code
*
*   Domain:        ARM11
*
*    
* =============================================================================
*/
#ifndef __EASIGLOBAL_H
#define __EASIGLOBAL_H

/* ============================================================================
* INCLUDE FILES (only if necessary)
* =============================================================================
*/
#ifdef __cplusplus
extern "C"
{
#endif

#include "global_types.h"

/* ============================================================================
* EXPORTED DEFINITIONS
* =============================================================================
*/

/* ----------------------------------------------------------------------------
* DEFINE:        READ_ONLY, WRITE_ONLY &  READ_WRITE    
*
* DESCRIPTION:  Defines used to describe register types for EASI-checker tests.
*
* NOTE:         Note
*
* -----------------------------------------------------------------------------
*/

#define READ_ONLY    1
#define WRITE_ONLY   2
#define READ_WRITE   3

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

/* ----------------------------------------------------------------------------
* TYPE:        regEnum    
*
* DESCRIPTION:  regtypes are used to switch to correct test function
*               there are as many regtypes as there are data definitions
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef enum _regEnum
{
    ACC_32BIT,
    ACC_16BIT,
    ACC_8BIT
} regEnum;

/* ----------------------------------------------------------------------------
* TYPE:        registerPORStruct    
*
* DESCRIPTION:  all required register data held in an array of structure for
*               power on reset tests.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerPORStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    powerOnValue;
    UWORD32    powerOnMask;
    UWORD32    rsrvdReturnOnesMask;
    UWORD32    rsrvdReturnZerosMask;
    UWORD8     regType;
} registerPORStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerIntegrityStruct    
*
* DESCRIPTION:  all required register data held in an array of structure for
*               integrity tests.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerIntegrityStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    readMask;
    UWORD32    powerOnValue;
    UWORD32    includeMask;
    UWORD32    rsrvdReturnOnesMask;
    UWORD32    rsrvdReturnZerosMask;
    UWORD8     regType;
} registerIntegrityStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerROWOStruct    
*
* DESCRIPTION:  all required register data held in an array of structure for
*               read only/write only register tests.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerROWOStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    readMask;
    UWORD32    powerOnValue;
    UWORD32    includeMask;
    UWORD32    rsrvdReturnOnesMask;
    UWORD32    rsrvdReturnZerosMask;
    UWORD8     regType;
} registerROWOStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerExclusivityStruct    
*
* DESCRIPTION:  all required register data held in an array of structure for
*               exclusivity tests.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerExclusivityStruct
{
    UWORD32    ID;
    UWORD8     IOstatus;
    UWORD32    address;
    UWORD32    powerOnValue;
    UWORD32    powerOnMask;
    UWORD32    readMask;
    UWORD32    includeMask;
    UWORD32    rsrvdReturnOnesMask;
    UWORD32    rsrvdReturnZerosMask;
    UWORD8     regType;
} registerExclusivityStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerPORHandStruct    
*
* DESCRIPTION:  all required register data held in an array of Structure for
*               power on reset tests, that have been hand written.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerPORHandStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    powerOnValue;
    UWORD32    powerOnMask;
    regEnum    regType;
} registerPORHandStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerIntegrityHandStruct    
*
* DESCRIPTION:  all required register data held in an array of HandStructure for
*               integrity tests, that have been hand written.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerIntegrityHandStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    readMask;
    UWORD32    powerOnValue;
    UWORD32    includeMask;
    UWORD8     regType;
} registerIntegrityHandStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerROWOHandStruct    
*
* DESCRIPTION:  all required register data held in an array of HandStructure for
*               read only/write only register tests, that have been hand written.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerROWOHandStruct
{
    UWORD32    ID;
    UWORD32    address;
    UWORD32    readMask;
    UWORD32    powerOnValue;
    UWORD32    includeMask;
    UWORD8     regType;
} registerROWOHandStruct;

/* ----------------------------------------------------------------------------
* TYPE:        registerExclusivityHandStruct    
*
* DESCRIPTION:  all required register data held in an array of HandStructure for
*               exclusivity tests, that have been hand written.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
typedef struct _registerExclusivityHandStruct
{
    UWORD32    ID;
    UWORD8     IOstatus;
    UWORD32    address;
    UWORD32    powerOnValue;
    UWORD32    powerOnMask;
    UWORD32    readMask;
    UWORD32    includeMask;
    UWORD8     regType;
} registerExclusivityHandStruct;



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

/* ----------------------------------------------------------------------------
* VARIABLE:     EASIDummy    
*
* DESCRIPTION:  A dummy variable used to such that macro _DEBUG_LEVEL_1_EASI
*               compiles when used as an expression inside a macro with the
*               comma operator.
*
* NOTE:         None
*
* -----------------------------------------------------------------------------
*/
extern UWORD32 EASIDummy;

/* ============================================================================
* EXPORTED FUNCTIONS/MACROS
* =============================================================================
*/

/* ----------------------------------------------------------------------------
* MACRO:        _DEBUG_LEVEL_1_EASI
*
* DESCRIPTION:  A MACRO which can be used to indicate that a particular beach
*               register access function was called.
*
* NOTE:         We currently dont use this functionality.
*
* -----------------------------------------------------------------------------
*/
#define _DEBUG_LEVEL_1_EASI(easiNum)     ((void)0)


#ifdef __cplusplus
}
#endif
#endif	/* __EASIGLOBAL_H */


⌨️ 快捷键说明

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