summaryrefslogtreecommitdiffstats
path: root/src/usr/xscom/test
diff options
context:
space:
mode:
authorMissy Connell <missyc@us.ibm.com>2013-04-25 14:54:56 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-05-16 09:56:30 -0500
commitcaf97f338fd6d40bb087aecb1e5fc7bf0b32d581 (patch)
tree37a964528f3465d10015b9949218cd743600e0f2 /src/usr/xscom/test
parent4b1f946d7558f8ca95c87d89e637513f18e87818 (diff)
downloadtalos-hostboot-caf97f338fd6d40bb087aecb1e5fc7bf0b32d581.tar.gz
talos-hostboot-caf97f338fd6d40bb087aecb1e5fc7bf0b32d581.zip
Xscom Error Handling
Change-Id: Ic43af1de85d7bba02ee9078451e093e5443e8890 RTC:60768 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/4402 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/xscom/test')
-rw-r--r--src/usr/xscom/test/xscomtest.H43
1 files changed, 42 insertions, 1 deletions
diff --git a/src/usr/xscom/test/xscomtest.H b/src/usr/xscom/test/xscomtest.H
index de111e65a..43acf8b9b 100644
--- a/src/usr/xscom/test/xscomtest.H
+++ b/src/usr/xscom/test/xscomtest.H
@@ -179,7 +179,7 @@ public:
TS_TRACE("testXscom1 runs successfully!");
}
return;
- }
+ }
/**
@@ -307,6 +307,47 @@ public:
}
return;
}
+
+
+ //TODO: RTC34591 - Add testcase that talks to the non master proc.
+
+ /**
+ * @brief XSCOM test #3
+ * read to an invalid address to force error path
+ */
+ void testXscom3(void)
+ {
+
+ TARGETING::TargetService& l_targetService = TARGETING::targetService();
+ TARGETING::Target* l_testTarget = NULL;
+ l_targetService.masterProcChipTargetHandle( l_testTarget );
+ assert(l_testTarget != NULL);
+ errlHndl_t l_err = NULL;
+
+ size_t l_size = sizeof(uint64_t);
+
+
+ // Perform XSComOM read
+ uint64_t l_readData = 0;
+ l_err = deviceRead(l_testTarget,
+ &l_readData,
+ l_size,
+ DEVICE_SCOM_ADDRESS(0x01001111));
+ if (l_err)
+ {
+
+ TS_TRACE("testXscom3: XSCom read fails as expected: invalid addr");
+ errlCommit(l_err,XSCOM_COMP_ID);
+ TS_TRACE("testXscom3 runs successfully!");
+ }
+ else
+ {
+ TS_FAIL("testXscom3: XSCom read did not fail with bad address");
+ }
+
+
+ return;
+ }
};
#endif
OpenPOWER on IntegriCloud