diff options
| author | Missy Connell <missyc@us.ibm.com> | 2013-04-25 14:54:56 -0500 |
|---|---|---|
| committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-05-16 09:56:30 -0500 |
| commit | caf97f338fd6d40bb087aecb1e5fc7bf0b32d581 (patch) | |
| tree | 37a964528f3465d10015b9949218cd743600e0f2 /src/usr/xscom/test | |
| parent | 4b1f946d7558f8ca95c87d89e637513f18e87818 (diff) | |
| download | talos-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.H | 43 |
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 |

