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

📄 2rheatest.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 1999, (C) Copyright 1999 Texas Instruments.  All rights reserved.

   Filename       	: RheaTest.h
   Description    	: Spec file for the test of ARM to Rhea Bridge module
   Project        	: Satustar
   Author         	: Francois Reygagne freygagn@tif.ti.com

===============================================================================

====================
*** Memory Mapping :
====================

(This memory mapping is available for both RHEA buses)
 
-------------------------------------------------
|Address              | Memory width | Size     |
-------------------------------------------------
| CS = 0x0 ; Strobe 0 | 8-bits       | 2 KBytes | MEM_RHEA_STROBE0_CS0_ADDR
-------------------------------------------------
| CS = 0x1 ; Strobe 0 | 16-bits      | 2 KBytes | MEM_RHEA_STROBE0_CS1_ADDR
-------------------------------------------------
| CS = 0x2 ; Strobe 0 | 32-bits      | 2 KBytes | MEM_RHEA_STROBE0_CS2_ADDR
-------------------------------------------------
| CS = 0x0 ; Strobe 1 | 8-bits       | 2 KBytes | MEM_RHEA_STROBE1_CS0_ADDR
-------------------------------------------------
| CS = 0x1 ; Strobe 1 | 16-bits      | 2 KBytes | MEM_RHEA_STROBE1_CS1_ADDR
-------------------------------------------------
| CS = 0x2 ; Strobe 1 | 32-bits      | 2 KBytes | MEM_RHEA_STROBE1_CS2_ADDR
-------------------------------------------------

*/


#ifndef _RHEATEST__HH
#define _RHEATEST__HH

//----------------------------------------------------------------------

#define MEM_BRIDGE1_STROBE0_CS0_8BITS  MEM_RHEA_STROBE0_CS0_ADDR
#define MEM_BRIDGE1_STROBE0_CS1_16BITS MEM_RHEA_STROBE0_CS1_ADDR
#define MEM_BRIDGE1_STROBE0_CS2_32BITS MEM_RHEA_STROBE0_CS2_ADDR

#define MEM_BRIDGE1_STROBE1_CS0_8BITS  MEM_RHEA_STROBE1_CS0_ADDR
#define MEM_BRIDGE1_STROBE1_CS1_16BITS MEM_RHEA_STROBE1_CS1_ADDR
#define MEM_BRIDGE1_STROBE1_CS2_32BITS MEM_RHEA_STROBE1_CS2_ADDR

#define MEM_BRIDGE2_STROBE0_CS0_8BITS  MEM_PUBLIC_RHEA_STROBE0_CS0_ADDR
#define MEM_BRIDGE2_STROBE0_CS1_16BITS MEM_PUBLIC_RHEA_STROBE0_CS1_ADDR
#define MEM_BRIDGE2_STROBE0_CS2_32BITS MEM_PUBLIC_RHEA_STROBE0_CS2_ADDR

#define MEM_BRIDGE2_STROBE1_CS0_8BITS  MEM_PUBLIC_RHEA_STROBE1_CS0_ADDR
#define MEM_BRIDGE2_STROBE1_CS1_16BITS MEM_PUBLIC_RHEA_STROBE1_CS1_ADDR
#define MEM_BRIDGE2_STROBE1_CS2_32BITS MEM_PUBLIC_RHEA_STROBE1_CS2_ADDR

//----------------------------------------------------------------------

#define MISMATCH_FUNC_VALUE32 0x0FACD5A5a
#define MISMATCH_FUNC_VALUE16 0x0AA55
#define MISMATCH_FUNC_VALUE8  0x0A5

#define VALUE_8BITS           0x12
#define VALUE_16BITS          0x67AD
#define VALUE_32BITS          0x6f7cA7D1
	
#define PRIVATE_RHEA	      1
#define PUBLIC_RHEA	      0

#define CONFIG_PATTERN_0                0
#define CONFIG_PATTERN_1                1
#define CONFIG_PATTERN_2                2
#define CONFIG_PATTERN_3                3
#define CONFIG_PATTERN_4                4
#define CONFIG_PATTERN_5                5
#define LOW_FREQ_PATTERN                6
#define HIGH_FREQ_PATTERN               7
#define ACCESS_FACTOR_PATTERN           8
#define WRITE_BUFF_PATTERN              9
#define CONFIG_PATTERN_ABORT_GENERATION 10

#define RHEA_BITS8_SIZE       0
#define RHEA_BITS16_SIZE      1
#define RHEA_BITS32_SIZE      2

#define RHEATEST_ABORT_TIMEOUT      0x01
#define RHEATEST_ABORT_MASK         0xFF


//-------------------------------------------------------------------------------
// NAME         : RHEA_TestSetConfig
//
// DESCRIPTION  : Set the config requested
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern      CONFIG_PATTERN_0
//                                   CONFIG_PATTERN_1
//                                   CONFIG_PATTERN_2 
//
// 
// RETURN VALUE : IS_OK or NOT_OK
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestSetConfig(UWORD16 BridgeNumber ,UWORD16 ConfigPattern );


//-------------------------------------------------------------------------------
// NAME         : RHEA_TestRw8BitsTest  
//
// DESCRIPTION  : Does 1 write on each strobe at the address specified
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern       Predefined rhea initialization 
//
//               Strobe0Address       Address on Strobe 0
//
//               Strobe1Address       Address on Strobe 1
//
//
// RETURN VALUE : Value of the register
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestRw8BitsTest(BOOL BridgeNumber, UWORD16 ConfigPattern ,UWORD32 Strobe0Address ,UWORD32 Strobe1Address);

//-------------------------------------------------------------------------------
// NAME         : RHEA_TestRw16BitsTest  
//
// DESCRIPTION  : Does 1 write on each strobe at the address specified
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern       Predefined rhea initialization 
//
//               Strobe0Address       Address on Strobe 0
//
//               Strobe1Address       Address on Strobe 1
//
//
// RETURN VALUE : Value of the register
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestRw16BitsTest(BOOL BridgeNumber, UWORD16 ConfigPattern ,UWORD32 Strobe0Address ,UWORD32 Strobe1Address);
//-------------------------------------------------------------------------------
// NAME         : RHEA_TestRw32BitsTest  
//
// DESCRIPTION  : Does 1 write on each strobe at the address specified
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern       Predefined rhea initialization 
//
//               Strobe0Address       Address on Strobe 0
//
//               Strobe1Address       Address on Strobe 1
//
//
// RETURN VALUE : Value of the register
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestRw32BitsTest(BOOL BridgeNumber, UWORD16 ConfigPattern ,UWORD32 Strobe0Address ,UWORD32 Strobe1Address);


//-------------------------------------------------------------------------------
// NAME         : RHEA_TestResetValuesTest  
//
// DESCRIPTION  : Test all the reset values of the specified bridge
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//
//
//
// RETURN VALUE : None
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestResetValuesTest(BOOL BridgeNumber );

//-------------------------------------------------------------------------------
// NAME         : RHEA_TestTestStoreLoad  
//
// DESCRIPTION  : Test all the reset values of the specified bridge
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern      CONFIG_PATTERN_0
//                                   CONFIG_PATTERN_1
//                                   CONFIG_PATTERN_2 ...
//                Strobe0Address
//
//                Strobe1Address
//
// RETURN VALUE : Value of the register
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestTestStoreLoad(BOOL BridgeNumber, UWORD16 ConfigPattern, UWORD32 Strobe0Address, UWORD32 Strobe1Address);

//-------------------------------------------------------------------------------
// NAME         : RHEA_TestTestMultipleAccess
//
// DESCRIPTION  : Test the access on the specified address
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                Strobe0Address
//
//                Strobe1Address
//
//
// RETURN VALUE : IS_OK or NOT_OK
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestTestMultipleAccess(UWORD16 BridgeNumber, UWORD32 Strobe0Address, UWORD32 Strobe1Address); 



//-------------------------------------------------------------------------------
// NAME         : RHEA_TestTestAccess 
//
// DESCRIPTION  : Test the access on the specified address
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                Strobe0Address
//
//                Strobe1Address
//
//                MemoryWidth
//
// RETURN VALUE : Value of the register
//
//-------------------------------------------------------------------------------- 
UWORD16 RHEA_TestTestAccess(UWORD32 Strobe0Address, UWORD32 Strobe1Address, UWORD16 MemoryWidth);


//-------------------------------------------------------------------------------
// NAME         : RHEA_TestWriteTest 
//
// DESCRIPTION  : Test the access on the specified address
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                Strobe0Address
//
//                Strobe1Address
//
//                MemoryWidth
//
// RETURN VALUE : IS_OK or NOT_OK
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestWriteTest(BOOL BridgeNumber, UWORD16 ConfigPattern,  UWORD32 Strobe0Address, UWORD32 Strobe1Address, UWORD16 MemoryWidth) ;

//-------------------------------------------------------------------------------
// NAME         : RHEA_TestGenerateAbort 
//
// DESCRIPTION  : Test the access on the specified address
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern      CONFIG_PATTERN_0
//                                   CONFIG_PATTERN_1
//                                   CONFIG_PATTERN_2 
//
//                MissingPerif      Address of a missing perif
//
//
// RETURN VALUE : IS_OK or NOT_OK
//
//-------------------------------------------------------------------------------- 
BOOL RHEA_TestGenerateAbort(BOOL BridgeNumber, UWORD16 ConfigPattern,  UWORD32 MissingPerif);

//---------------------------------------------------------------------------------------
// NAME         : RHEA_TestTimeoutTest 
//
// DESCRIPTION  : Test the access on the specified Missing address, it generate a timeout
//
// PARAMETERS   : BridgeNumber        BRIDGE_1 or BRIDGE_2
//
//                ConfigPattern      CONFIG_PATTERN_0
//                                   CONFIG_PATTERN_1
//                                   CONFIG_PATTERN_2 
//
//                MissingPerif      Address of a missing perif
//
//               Bridge_Irq_Counter_ptr pointer of irq counter
//
// RETURN VALUE : IS_OK or NOT_OK
//
//----------------------------------------------------------------------------------------
void RHEA_TestTimeoutTest(   UWORD16 BridgeNumber,   UWORD32 MissAdd, UWORD8 * Bridge_Irq_Counter_ptr);
#endif


⌨️ 快捷键说明

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