diff options
author | Dean Sanner <dsanner@us.ibm.com> | 2015-03-11 09:11:14 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2015-03-26 14:05:39 -0500 |
commit | a0f4a934254572ce49a1ddf5e4d5d944b52779be (patch) | |
tree | b03db504ce88a1ebc8230e391c6139a3f30b59d3 /src | |
parent | e912f647e06fcf9efa601e419785552b6341ecf0 (diff) | |
download | blackbird-hostboot-a0f4a934254572ce49a1ddf5e4d5d944b52779be.tar.gz blackbird-hostboot-a0f4a934254572ce49a1ddf5e4d5d944b52779be.zip |
Support partial good Xbus
Change-Id: I245cd9947d5b7a05ff9a8f92ff18c658b1fe09d6
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/16300
Tested-by: Jenkins Server
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: Brian H. Horton <brianh@linux.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/usr/hwpf/plat/fapiPlatAttributeService.C | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/usr/hwpf/plat/fapiPlatAttributeService.C b/src/usr/hwpf/plat/fapiPlatAttributeService.C index 6e4f40039..7da841a50 100644 --- a/src/usr/hwpf/plat/fapiPlatAttributeService.C +++ b/src/usr/hwpf/plat/fapiPlatAttributeService.C @@ -58,11 +58,14 @@ #include <hwpf/hwp/pll_accessors/getPllRingInfoAttr.H> #include <hwpf/hwp/winkle_ring_accessors/getL3DeltaDataAttr.H> #include <fapiAttributeIds.H> +#include <hwas/common/hwasCommon.H> + // The following file checks at compile time that all HWPF attributes are // handled by Hostboot. This is done to ensure that the HTML file listing // supported HWPF attributes lists attributes handled by Hostboot #include <fapiAttributePlatCheck.H> + //****************************************************************************** // Implementation //****************************************************************************** @@ -1239,6 +1242,7 @@ fapi::ReturnCode fapiPlatGetEnableAttr ( fapi::AttributeId i_id, { fapi::ReturnCode l_rc; TARGETING::Target * l_pTarget = NULL; + o_enable = 0; // Get the Targeting Target l_rc = getTargetingTarget(i_pFapiTarget, l_pTarget); @@ -1271,10 +1275,20 @@ fapi::ReturnCode fapiPlatGetEnableAttr ( fapi::AttributeId i_id, o_enable = 1; break; case fapi::ATTR_PROC_X_ENABLE: - // The enable flag reflects the state of the pervasive chiplet, - // NOT the bus logic, so always return true since we don't - // support partial good on the XBUS chiplet - o_enable = 1; + // Need to support having the X bus chiplet partial good + // Look at the saved away PG data + TARGETING::ATTR_CHIP_REGIONS_TO_ENABLE_type l_chipRegionData; + l_rc = FAPI_ATTR_GET(ATTR_CHIP_REGIONS_TO_ENABLE, i_pFapiTarget, + l_chipRegionData); + if (l_rc) { + FAPI_ERR("fapi_attr_get( ATTR_CHIP_REGIONS_TO_ENABLE ) failed. With rc = 0x%x", + (uint32_t) l_rc ); + break; + } + else if (l_chipRegionData[HWAS::VPD_CP00_PG_XBUS_INDEX] != 0) + { + o_enable = 0x1; + } break; default: o_enable = 0; |