diff options
author | crgeddes <crgeddes@us.ibm.com> | 2016-07-27 11:54:05 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-07-28 10:34:02 -0400 |
commit | 7985119ccf8c6ddd89f4481117106fa71e5874d5 (patch) | |
tree | b6ee4fbfdc13c231f63d751383b72636f45953dd /src/usr/scom | |
parent | c03003723f00e8d9200b4a03bf55495c48cb0d77 (diff) | |
download | talos-hostboot-7985119ccf8c6ddd89f4481117106fa71e5874d5.tar.gz talos-hostboot-7985119ccf8c6ddd89f4481117106fa71e5874d5.zip |
Add TYPE_CAPP as scommable type
Change-Id: Ic1f279dbe2d692bbb20a0d9e90b8d4174420e4da
RTC: 158390
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27516
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Thi N. Tran <thi@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/scom')
-rw-r--r-- | src/usr/scom/scomtrans.C | 10 | ||||
-rw-r--r-- | src/usr/scom/test/scomtest.H | 12 |
2 files changed, 17 insertions, 5 deletions
diff --git a/src/usr/scom/scomtrans.C b/src/usr/scom/scomtrans.C index f0923ae43..4b5987fb3 100644 --- a/src/usr/scom/scomtrans.C +++ b/src/usr/scom/scomtrans.C @@ -161,7 +161,10 @@ DEVICE_REGISTER_ROUTE(DeviceFW::WILDCARD, TARGETING::TYPE_OCC, startScomProcess); - +DEVICE_REGISTER_ROUTE(DeviceFW::WILDCARD, + DeviceFW::SCOM, + TARGETING::TYPE_CAPP, + startScomProcess); ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// @@ -630,6 +633,11 @@ bool getChipUnit (TARGETING::TYPE i_type, o_chipUnit = PU_OCC_CHIPUNIT; break; } + case(TARGETING::TYPE_CAPP) : + { + o_chipUnit = PU_CAPP_CHIPUNIT; + break; + } //Need to add centaur support for Cumulus //@TODO RTC: 139953 default: diff --git a/src/usr/scom/test/scomtest.H b/src/usr/scom/test/scomtest.H index 2b5a0b3c9..edfa21260 100644 --- a/src/usr/scom/test/scomtest.H +++ b/src/usr/scom/test/scomtest.H @@ -625,7 +625,7 @@ public: } test_data[] = { { scom_targets[myPROC0], 0x900003210D010BEE, 0x0004432112344321, false}, // Form 1 { scom_targets[myPROC0], 0x9000012307011BEE, 0x000443211234ABAB, false }, // Form 1 - { scom_targets[myPROC0], 0x9000000007011BEE, 0x123443211234ABAB, true }, // Form 1 + { scom_targets[myPROC0], 0x9000000007011BEE, 0x123443211234ABAB, true }, // Form 1 { scom_targets[myPROC0], 0x9FEEDB0B0DEADBEE, 0x000443211234ABAB, true }, // Form 1 }; const uint64_t NUM_ADDRS = sizeof(test_data)/sizeof(test_data[0]); @@ -648,7 +648,7 @@ public: &(test_data[x].data), op_size, DEVICE_SCOM_ADDRESS(test_data[x].addr) ); - + if(!test_data[x].isFail && l_err ) { TRACFCOMP(g_trac_scom, "ScomTest::test_IndirectScomForm1_proc> [%d] Write: Error from device : addr=0x%X, RC=%X", x, test_data[x].addr, l_err->reasonCode() ); @@ -713,8 +713,8 @@ public: { TRACFCOMP(g_trac_scom, "ScomTest::test_IndirectScomreadWriteForm1_proc> [%d] Read: Data miss-match : addr=0x%X, read_form1data=0x%llx, write_data=0x%llx", x, read_addresses[x].addr, read_form1data[x], test_data[x].data); TS_FAIL( "ScomTest::test_IndirectScomreadWriteForm1_proc> ERROR : Data miss-match between read and expected data" ); - fails++; - } + fails++; + } } // allocate space for read data @@ -798,6 +798,7 @@ public: myOCC1, mySBE0, mySBE1, + myCAPP0, NUM_TARGETS }; @@ -1021,6 +1022,8 @@ public: // remove SBE1 target epath.removeLast(); + epath.addLast(TARGETING::TYPE_CAPP,0); + scom_targets[myCAPP0] = TARGETING::targetService().toTarget(epath); struct { TARGETING::Target* target; uint64_t initAddr; @@ -1094,6 +1097,7 @@ public: { scom_targets[myNV1], 0x050110D4, 0x050110F4,false}, { scom_targets[myNV0], 0x12012826, 0x12012826, true}, { scom_targets[myNV1], 0x24030008, 0x24030008, true}, + { scom_targets[myCAPP0],0x2010803, 0x2010803, false}, }; int numOfAddr = sizeof test_data / sizeof(test_data[0]); |