summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChris Phan <cphan@us.ibm.com>2014-09-26 09:36:49 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-09-26 21:37:38 -0500
commit4c440a2edad3ecea9318e1124b20adff53a6753c (patch)
tree1bd715e3ad7dd622b3751df09d5d132bd7012495 /src
parent8bb0f2a869989fcc72da48c9cbb44a8e4dd92154 (diff)
downloadblackbird-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')
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfPlatServices_common.C26
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc.rule4
-rw-r--r--src/usr/diag/prdf/framework/service/prdfPlatServices.C17
-rwxr-xr-xsrc/usr/diag/prdf/test/prdfTest_ProcTpLFir.H8
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);
OpenPOWER on IntegriCloud