diff options
author | Dan Crowell <dcrowell@us.ibm.com> | 2016-07-19 10:21:20 -0500 |
---|---|---|
committer | Matthew A. Ploetz <maploetz@us.ibm.com> | 2016-07-21 09:49:20 -0400 |
commit | 8232138485eaf9636177ccab4f28ec4fb28db081 (patch) | |
tree | 3d7203a095fcec22a28bb85d0074c8bd5f6a252a /src/usr/hwas/common | |
parent | 4e54a43328b2bc15edbea0e049871d16bb5afe6f (diff) | |
download | talos-hostboot-8232138485eaf9636177ccab4f28ec4fb28db081.tar.gz talos-hostboot-8232138485eaf9636177ccab4f28ec4fb28db081.zip |
Minor PG tweaks
Change bit to check for PERV targets (use bit3)
Set ATTR_PG based on VPD data
Make ATTR_PG writeable
Change-Id: Id31b39667ae66f274761402e1369c56d4817565f
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27219
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Reviewed-by: Matthew A. Ploetz <maploetz@us.ibm.com>
Diffstat (limited to 'src/usr/hwas/common')
-rw-r--r-- | src/usr/hwas/common/hwas.C | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/src/usr/hwas/common/hwas.C b/src/usr/hwas/common/hwas.C index 152672433..0daea5577 100644 --- a/src/usr/hwas/common/hwas.C +++ b/src/usr/hwas/common/hwas.C @@ -883,22 +883,26 @@ bool isDescFunctional(const TARGETING::TargetHandle_t &i_desc, { // The chip unit number of the perv target // is the index into the PG data - ATTR_CHIP_UNIT_type indexPERV = - i_desc->getAttr<ATTR_CHIP_UNIT>(); + ATTR_CHIP_UNIT_type indexPERV = + i_desc->getAttr<ATTR_CHIP_UNIT>(); + + // Check VITAL bit in the entry + if ((i_pgData[indexPERV] + & VPD_CP00_PG_xxx_VITAL) != 0) + { + HWAS_INF("pDesc %.8X - PERV pgData[%d]: " + "actual 0x%04X, expected 0x%04X - bad", + i_desc->getAttr<ATTR_HUID>(), + indexPERV, + i_pgData[indexPERV], + (i_pgData[indexPERV] & + ~VPD_CP00_PG_xxx_VITAL)); + l_descFunctional = false; + } - // Check PERV bit in the entry - if ((i_pgData[indexPERV] - & VPD_CP00_PG_xxx_PERV) != 0) - { - HWAS_INF("pDesc %.8X - PERV pgData[%d]: " - "actual 0x%04X, expected 0x%04X - bad", - i_desc->getAttr<ATTR_HUID>(), - indexPERV, - i_pgData[indexPERV], - (i_pgData[indexPERV] & - ~VPD_CP00_PG_xxx_PERV)); - l_descFunctional = false; - } + // Set the local attribute copy of this data + ATTR_PG_type l_pg = i_pgData[indexPERV]; + i_desc->setAttr<ATTR_PG>(l_pg); } return l_descFunctional; |