diff options
| author | Adam Muhle <armuhle@us.ibm.com> | 2011-10-31 16:11:01 -0500 |
|---|---|---|
| committer | ADAM R. MUHLE <armuhle@us.ibm.com> | 2011-11-01 17:02:47 -0500 |
| commit | 2220bca4373e7dc69a3ad556a9386c5d79e4a7e3 (patch) | |
| tree | 67bd8dda5034f87355493f185f06edc86cf69783 /src/usr/scom/test | |
| parent | 0d03f507d4952bc2f2c746ee60dcd155ba4ea507 (diff) | |
| download | talos-hostboot-2220bca4373e7dc69a3ad556a9386c5d79e4a7e3.tar.gz talos-hostboot-2220bca4373e7dc69a3ad556a9386c5d79e4a7e3.zip | |
FSISCOM test case cleanup for VBU
-Don't perform test cases if target is not valid or does not support FSI SCOM
Change-Id: Id3d46542f4329ac9471559acfb65df8ab15c3a87
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/470
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/scom/test')
| -rw-r--r-- | src/usr/scom/test/scomtest.H | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/src/usr/scom/test/scomtest.H b/src/usr/scom/test/scomtest.H index 46000c136..34134b7ab 100644 --- a/src/usr/scom/test/scomtest.H +++ b/src/usr/scom/test/scomtest.H @@ -51,36 +51,39 @@ public: */ void test_FSISCOMreadWrite(void) { - TRACFCOMP( g_trac_scom, "ScomTest::test_FSISCOMreadWrite> Start" ); - TRACFCOMP( g_trac_scom, "ScomTest::test_FSISCOMreadWrite> Disabled due to simics stability issues" ); - return; //@todo - enable when simics is stable - uint64_t fails = 0; uint64_t total = 0; errlHndl_t l_err = NULL; - //make sure the FSI hardware is initailized (ordering of test cases is not currently guaranteed) - l_err = FSI::initializeHardware(); - if( l_err ) - { - TRACFCOMP(g_trac_scom, "ScomTest::test_FSISCOMreadWrite> FSI::initializeHardware failed, RC=0x%X", l_err->reasonCode() ); - TS_FAIL( "ScomTest::test_FSISCOMreadWrite> FsiDD::initializeHardware failed, aborting test case." ); - errlCommit(l_err); - return; - } - - TARGETING::Target* fsi_target = NULL; // Target Proc 1 - the FSI wrap-back connection in simics TARGETING::EntityPath epath(TARGETING::EntityPath::PATH_PHYSICAL); epath.addLast(TARGETING::TYPE_SYS,0); epath.addLast(TARGETING::TYPE_NODE,0); - epath.addLast(TARGETING::TYPE_PROC,1); + epath.addLast(TARGETING::TYPE_PROC,9); fsi_target = TARGETING::targetService().toTarget(epath); + //only run if the target exists and has FSI enabled. + if(fsi_target == NULL) + { + TRACFCOMP( g_trac_scom, "ScomTest::test_FSISCOMreadWrite> FSI Target not found, exiting test" ); + return; + } + else if((TARGETING::MASTER_PROCESSOR_CHIP_TARGET_SENTINEL == fsi_target) || + (fsi_target->getAttr<TARGETING::ATTR_SCOM_SWITCHES>().useXscom)) + { + TRACFCOMP( g_trac_scom, "ScomTest::test_FSISCOMreadWrite> Target is the MASTER Sentinal or is set to use Xscom, exiting test" ); + return; + } + else if(0 == fsi_target->getAttr<TARGETING::ATTR_SCOM_SWITCHES>().useFsiScom) + { + TRACFCOMP( g_trac_scom, "ScomTest::test_FSISCOMreadWrite> useFsiScom set to zero, exiting test" ); + return; + } + // scratch data to use //@fixme: Need to either fabricate some fake registers to use or save off data before modifying SCOMs to avoid // corrupting the HW. |

