diff options
author | Chris Phan <cphan@us.ibm.com> | 2014-09-26 09:36:49 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-09-26 21:37:38 -0500 |
commit | 4c440a2edad3ecea9318e1124b20adff53a6753c (patch) | |
tree | 1bd715e3ad7dd622b3751df09d5d132bd7012495 /src | |
parent | 8bb0f2a869989fcc72da48c9cbb44a8e4dd92154 (diff) | |
download | blackbird-hostboot-4c440a2edad3ecea9318e1124b20adff53a6753c.tar.gz blackbird-hostboot-4c440a2edad3ecea9318e1124b20adff53a6753c.zip |
PRD: change cfam(2819) to scom(50019) for active psie osc query
Change-Id: Ib30eebf6c98b0dfccb6ec5ac643561c0e53ed001
CQ: SW280087
Backport: release-fips820
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13611
Tested-by: Jenkins Server
Reviewed-by: Prem Shanker Jha <premjha2@in.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Reviewed-by: Christopher T. Phan <cphan@us.ibm.com>
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13629
Diffstat (limited to 'src')
4 files changed, 27 insertions, 28 deletions
diff --git a/src/usr/diag/prdf/common/framework/service/prdfPlatServices_common.C b/src/usr/diag/prdf/common/framework/service/prdfPlatServices_common.C index 18023a4a7..833c72ca6 100755 --- a/src/usr/diag/prdf/common/framework/service/prdfPlatServices_common.C +++ b/src/usr/diag/prdf/common/framework/service/prdfPlatServices_common.C @@ -116,21 +116,29 @@ uint32_t getIoOscPos( ExtensibleChip * i_chip, do { - uint32_t u32Data = 0; + int32_t rc = SUCCESS; - int32_t tmpRc = getCfam( i_chip, io_sc, 0x2819, u32Data ); + SCAN_COMM_REGISTER_CLASS * pcieOscSwitchReg = + i_chip->getRegister("PCIE_OSC_SWITCH"); - if ( SUCCESS != tmpRc ) + rc = pcieOscSwitchReg->Read(); + if (rc != SUCCESS) { - PRDF_ERR( PRDF_FUNC"getCfam of 0x2819 returned error for " - "chip 0x%08x", i_chip->GetId() ); + PRDF_ERR(PRDF_FUNC"PCIE_OSC_SWITCH read failed" + "for 0x%08x", i_chip->GetId()); break; } - // 2819 [ 16 ] == 1 ( OSC 0 is active ) - // 2819 [ 16 ] == 0 ( OSC 1 is active ) - uint32_t tmpData = ( u32Data >> 15 ) & 0x1; - o_oscPos = (tmpData == 1 ? 0:1); + // [ 16 ] == 1 ( OSC 0 is active ) + // [ 16 ] == 0 ( OSC 1 is active ) + if(pcieOscSwitchReg->IsBitSet(16)) + { + o_oscPos = 0; + } + else + { + o_oscPos = 1; + } } while(0); diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc.rule index 8c97fcbe0..03bb3bfcf 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Proc.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Proc.rule @@ -165,8 +165,8 @@ chip Proc register PCIE_OSC_SWITCH { name "TPC.FSI.FSI_MAILBOX.FSXCOMP.FSXLOG.SNS1LTH"; - scomaddr 0x00002819; - capture group never; + scomaddr 0x00050019; + capture group PllFIRs; }; }; diff --git a/src/usr/diag/prdf/framework/service/prdfPlatServices.C b/src/usr/diag/prdf/framework/service/prdfPlatServices.C index cb20e8a44..39ae15d6a 100644 --- a/src/usr/diag/prdf/framework/service/prdfPlatServices.C +++ b/src/usr/diag/prdf/framework/service/prdfPlatServices.C @@ -345,23 +345,6 @@ void captureFsiStatusReg( ExtensibleChip * i_chip, bs); } - // only get this for proc chip - if ( TYPE_PROC == getTargetType(i_chip->GetChipHandle()) ) - { - rc = getCfam( i_chip, io_sc, 0x00002819, u32Data ); - - if ( SUCCESS == rc ) - { - BIT_STRING_ADDRESS_CLASS bs (0, 32, (CPU_WORD *) &u32Data); - - io_sc.service_data->GetCaptureData().Add( - i_chip->GetChipHandle(), - ( Util::hashString("PCIE_OSC_SWITCH") ^ - i_chip->getSignatureOffset() ), - bs); - } - } - #undef PRDF_FUNC } diff --git a/src/usr/diag/prdf/test/prdfTest_ProcTpLFir.H b/src/usr/diag/prdf/test/prdfTest_ProcTpLFir.H index 2bd7140fb..b6560660e 100755 --- a/src/usr/diag/prdf/test/prdfTest_ProcTpLFir.H +++ b/src/usr/diag/prdf/test/prdfTest_ProcTpLFir.H @@ -79,6 +79,10 @@ class PTPLFIR:public CxxTest::TestSuite //PRDS_SCR_EXPECT("NODE{0}:PROC{0}", 0x090F001E, //0x0008000000000001); + // PCIE_OSC_SWITCH [16] : active osc-0 + PRDS_SCR_WRITE("NODE{0}:PROC{0}", 0x00050019, + 0x000080000000000); + // PB_ERROR_REG PRDS_SCR_WRITE("NODE{0}:PROC{0}", 0x020F001F, 0x0000000000000001); @@ -156,6 +160,10 @@ class PTPLFIR:public CxxTest::TestSuite //PRDS_SCR_EXPECT("NODE{0}:PROC{0}", 0x090F001E, //0x0008000000000001); + // PCIE_OSC_SWITCH [16] : active osc-0 + PRDS_SCR_WRITE("NODE{0}:PROC{0}", 0x00050019, + 0x000080000000000); + // PB_ERROR_REG PRDS_SCR_WRITE("NODE{0}:PROC{0}", 0x020F001F, 0x0000000000000001); |