📄 2rheatest.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 + -