summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Rispoli <jprispol@us.ibm.com>2014-10-24 12:05:55 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-11-06 17:18:02 -0600
commit1864a05ed1b11c302364a4befde57f5adbe231ed (patch)
tree7f7514b76a19f7a039c0cbd6d96a7862ef6d301b
parentac55612db96fb249f3f2813fc4b0fb256ec829c0 (diff)
downloadtalos-hostboot-1864a05ed1b11c302364a4befde57f5adbe231ed.tar.gz
talos-hostboot-1864a05ed1b11c302364a4befde57f5adbe231ed.zip
SW284202: Remove FAPI_ATTR_GET_PRIVILEGED from mss_get_cen_ecid.C
CQ:SW284202 Change-Id: I822cfa12db7b251f6ef2a434ab9257767b60c1a6 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/14179 Tested-by: Jenkins Server Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r--src/usr/hwpf/hwp/centaur_ec_attributes.xml25
-rw-r--r--src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.C49
-rw-r--r--src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.H6
3 files changed, 56 insertions, 24 deletions
diff --git a/src/usr/hwpf/hwp/centaur_ec_attributes.xml b/src/usr/hwpf/hwp/centaur_ec_attributes.xml
index 53f1bba96..52e7acdc0 100644
--- a/src/usr/hwpf/hwp/centaur_ec_attributes.xml
+++ b/src/usr/hwpf/hwp/centaur_ec_attributes.xml
@@ -1,7 +1,7 @@
<!-- IBM_PROLOG_BEGIN_TAG -->
<!-- This is an automatically generated prolog. -->
<!-- -->
-<!-- $Source: src/usr/hwpf/hwp/centaur_ec_attributes.xml $ -->
+<!-- $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/centaur/working/procedures/xml/attribute_info/centaur_ec_attributes.xml,v $ -->
<!-- -->
<!-- OpenPOWER HostBoot Project -->
<!-- -->
@@ -24,7 +24,7 @@
<!-- IBM_PROLOG_END_TAG -->
<attributes>
<!-- ********************************************************************* -->
- <!-- $Id: centaur_ec_attributes.xml,v 1.27 2014/06/11 17:42:04 yctschan Exp $ -->
+ <!-- $Id: centaur_ec_attributes.xml,v 1.30 2014/10/30 14:50:22 jprispol Exp $ -->
<attribute>
<id>ATTR_CENTAUR_EC_ENABLE_TRACE_ARRAY_CLKSTOP_ON_XSTOP_FW624741</id>
<targetType>TARGET_TYPE_MEMBUF_CHIP</targetType>
@@ -163,6 +163,24 @@
</chipEcFeature>
</attribute>
+
+ <attribute>
+ <id>ATTR_CENTAUR_BLUEWATERFALL_NWELL_BROKEN_CHECK_FLAG</id>
+ <targetType>TARGET_TYPE_MEMBUF_CHIP</targetType>
+ <description>
+ Set by the platform depending on DD1.0 (TRUE), otherwise FALSE. If true, subversion will be checked in mss_get_cen_ecid.C to determine if changes need to be made to the transistor misplaced in the nwell.
+ </description>
+ <chipEcFeature>
+ <chip>
+ <name>ENUM_ATTR_NAME_CENTAUR</name>
+ <ec>
+ <value>0x10</value>
+ <test>EQUAL</test>
+ </ec>
+ </chip>
+ </chipEcFeature>
+ </attribute>
+
<attribute>
<id>ATTR_CENTAUR_EC_MSS_CONTINUE_ON_DP18_PLL_LOCK_FAIL</id>
<targetType>TARGET_TYPE_MEMBUF_CHIP</targetType>
@@ -442,7 +460,4 @@ The getMBvpdSlopeInterceptData Attribute Accessor, if it does not find a matchin
</chipEcFeature>
</attribute>
-
-
-
</attributes>
diff --git a/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.C b/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.C
index 24ff7d87e..dd699ab2e 100644
--- a/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.C
+++ b/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.C
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_get_cen_ecid.C,v 1.32 2014/05/08 18:52:38 lapietra Exp $
+// $Id: mss_get_cen_ecid.C,v 1.37 2014/11/03 17:40:02 jprispol Exp $
//------------------------------------------------------------------------------
// *|
// *! (C) Copyright International Business Machines Corp. 2012
@@ -41,6 +41,9 @@
//------------------------------------------------------------------------------
// Version:| Author: | Date: | Comment:
//---------|----------|---------|-----------------------------------------------
+// 1.37 | jprispol |03-NOV-14| Moved bluewaterfall/nwell variable declarations
+// 1.36 | jprispol |28-OCT-14| Updated bluewaterfall/nwell broken attribute name
+// 1.34 | jprispol |24-OCT-14| Replaced privileged fapi attribute call
// 1.32 | sglancy |08-MAY-14| Changed location of the setting ATTR_MSS_INIT_STATE to track IPL states
// 1.31 | sglancy |25-MAR-14| RAS review updates
// 1.30 | bellows |11-NOV-13| Gerrit review updates
@@ -109,20 +112,30 @@ using namespace fapi;
rc = FAPI_ATTR_SET(ATTR_MSS_INIT_STATE, &i_target, l_attr_mss_init_state);
if(rc) return rc;
+ uint8_t l_bluewaterfall_nwell_broken;
+ rc = FAPI_ATTR_GET(ATTR_CENTAUR_BLUEWATERFALL_NWELL_BROKEN_CHECK_FLAG,
+ &i_target, l_bluewaterfall_nwell_broken);
+ // For certain Centaur DD1.0* subversions, adjustments need to be made to
+ // the bluewaterfall and the transistor misplaced in the nwell.
+ // l_bluewaterfall_nwell_broken will be 1 if needing changes and 0 if not
+ if (!rc.ok()) {
+ FAPI_ERR("mss_get_cen_ecid: could not GET ATTR_CENTAUR_BLUEWATERFALL_NWELL_BROKEN_CHECK_FLAG" );
+ return rc;
+ }
if(ecid_struct.valid) {
rc = mss_parse_ecid(ecid_struct.io_ecid,
ecid_struct.i_checkL4CacheEnableUnknown,
ecid_struct.i_ecidContainsPortLogicBadIndication,
- ecid_struct.io_ec,
+ l_bluewaterfall_nwell_broken,
o_ddr_port_status,
o_cache_enable,
o_centaur_sub_revision,
ecid_struct.o_psro,
ecid_struct.o_bluewaterfall_broken,
ecid_struct.o_nwell_misplacement );
-
+
// procedure is done.
return rc;
}
@@ -191,17 +204,19 @@ using namespace fapi;
return rc;
}
- uint8_t l_ec;
- uint8_t l_nwell_misplacement;
uint8_t l_bluewaterfall_broken;
- rc = FAPI_ATTR_GET_PRIVILEGED(ATTR_EC, &i_target, l_ec);
- if (!rc.ok()) {
- FAPI_ERR("mss_get_cen_ecid: could not GET PRIVILEGED ATTR_EC" );
- return rc;
- }
- ecid_struct.io_ec=l_ec;
+ uint8_t l_nwell_misplacement;
+ rc = mss_parse_ecid(ecid,
+ l_checkL4CacheEnableUnknown,
+ l_ecidContainsPortLogicBadIndication,
+ l_bluewaterfall_nwell_broken,
+ o_ddr_port_status,
+ o_cache_enable,
+ o_centaur_sub_revision,
+ l_psro,
+ l_bluewaterfall_broken,
+ l_nwell_misplacement );
- rc = mss_parse_ecid(ecid, l_checkL4CacheEnableUnknown, l_ecidContainsPortLogicBadIndication, l_ec, o_ddr_port_status, o_cache_enable, o_centaur_sub_revision, l_psro, l_bluewaterfall_broken, l_nwell_misplacement );
ecid_struct.o_psro=l_psro;
ecid_struct.o_bluewaterfall_broken=l_bluewaterfall_broken;
ecid_struct.o_nwell_misplacement=l_nwell_misplacement;
@@ -241,7 +256,7 @@ using namespace fapi;
fapi::ReturnCode mss_parse_ecid(uint64_t ecid[2],
const uint8_t i_checkL4CacheEnableUnknown,
const uint8_t i_ecidContainsPortLogicBadIndication,
- const uint8_t ec,
+ const uint8_t i_bluewaterfall_nwell_broken,
uint8_t & o_ddr_port_status,
uint8_t & o_cache_enable,
uint8_t & o_centaur_sub_revision,
@@ -249,7 +264,7 @@ using namespace fapi;
uint8_t & o_bluewaterfall_broken,
uint8_t & o_nwell_misplacement ){
//get bit128
- uint8_t bit128=0;
+ uint8_t bit128 = 0;
uint32_t rc_ecmd = 0;
fapi::ReturnCode rc;
ecmdDataBufferBase scom(64);
@@ -379,7 +394,7 @@ using namespace fapi;
// The ecid contains the chip's subrevision, changes in the subrevision should not
// change firmware behavior but for the exceptions, update attributes to indicate
// those behaviors
- if ((ec == 0x10) && (o_centaur_sub_revision < 1))
+ if (i_bluewaterfall_nwell_broken && (o_centaur_sub_revision < 1))
{
// For DD1.00, the transistor misplaced in the nwell needs some setting adjustments to get it to function
// after DD1.00, we no longer need to make that adjustment
@@ -396,7 +411,7 @@ using namespace fapi;
}
// we have to look at both the bluewaterfall and the n-well misplacement to determine the proper values of the n-well
- if (ec == 0x10) {
+ if (i_bluewaterfall_nwell_broken) {
if(bit126 == 0)
{
// on and after DD1.03, we no longer need to make adjustments due to the bluewaterfall - this is before
@@ -419,7 +434,7 @@ using namespace fapi;
return mss_parse_ecid(ecid_struct.io_ecid,
ecid_struct.i_checkL4CacheEnableUnknown,
ecid_struct.i_ecidContainsPortLogicBadIndication,
- ecid_struct.io_ec,
+ ecid_struct.i_bluewaterfall_nwell_broken,
o_ddr_port_status,
o_cache_enable,
o_centaur_sub_revision,
diff --git a/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.H b/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.H
index 67fe34c3e..b6e9ef23d 100644
--- a/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.H
+++ b/src/usr/hwpf/hwp/dmi_training/mss_getecid/mss_get_cen_ecid.H
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_get_cen_ecid.H,v 1.12 2014/03/25 21:09:09 uid157495 Exp $
+// $Id: mss_get_cen_ecid.H,v 1.14 2014/10/24 16:44:40 jprispol Exp $
//------------------------------------------------------------------------------
// *|
// *! (C) Copyright International Business Machines Corp. 2012
@@ -43,6 +43,7 @@
//------------------------------------------------------------------------------
// Version:| Author: | Date: | Comment:
//---------|----------|---------|-----------------------------------------------
+// 1.14 | jprispol |24-OCT-14| Replaced privileged fapi attr call in mss_get_cen_ecid.c
// 1.11 | sglancy |25-MAR-14| Minor Review Comments addressed
// 1.10 | bellows |02-OCT-13| Minor Review Comments addressed
// 1.9 | bellows |17-SEP-13| Allow for external wrapper parsing
@@ -80,6 +81,7 @@ public:
uint8_t valid;
uint8_t i_checkL4CacheEnableUnknown;
uint8_t i_ecidContainsPortLogicBadIndication;
+ uint8_t i_bluewaterfall_nwell_broken;
uint8_t i_user_defined;
uint8_t io_ec;
uint64_t io_ecid[2];
@@ -130,7 +132,7 @@ extern "C"
uint64_t ecid[2], // input ECID in bit order
const uint8_t l_checkL4CacheEnableUnknown, // input L4CacheEnableUnknown is possible
const uint8_t l_ecidContainsPortLogicBadIndication, // input logic can be bad
- const uint8_t ec, // input ec of chip
+ const uint8_t l_bluewaterfall_nwell_broken, // adjustments possibly needed for bluewaterfall and transistor misplaced in the nwell
uint8_t & ddr_port, //output ddr ports are non functional
uint8_t & cache_enable_o, // output cache is functional or not
uint8_t & centaur_sub_revision_o, // output sub revsion number
OpenPOWER on IntegriCloud