Skip to content

Commit

Permalink
Changing PHYP HBRT to work on normal-core mode instead of fused.
Browse files Browse the repository at this point in the history
Change-Id: Icbbdc529ed88cd19a408729e5573423b19a1eb1e
RTC:154667
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41436
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
e-liner authored and dcrowell77 committed Jun 14, 2017
1 parent 16bd650 commit 3608c1f
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 14 deletions.
29 changes: 17 additions & 12 deletions src/usr/runtime/customize_attrs_for_payload.C
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2012,2016 */
/* Contributors Listed Below - COPYRIGHT 2012,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -374,20 +374,25 @@ errlHndl_t configureHbrtHypIds(const bool i_configForPhyp)
break;
}

// PHyp only operates on fused cores, so all core IDs
// must match that of the parent EX
if( (*pIt)->getAttr<TARGETING::ATTR_TYPE>()
== TARGETING::TYPE_CORE)
{
auto type = TARGETING::TYPE_EX;
const TARGETING::Target* pEx =
TARGETING::getParent(*pIt,type);

// If this fails, everything is already hosed
assert(pEx != NULL);

hbrtHypId =
pEx->getAttr<TARGETING::ATTR_ORDINAL_ID>();
if(TARGETING::is_fused_mode())
{
// If we're in fused core mode, all core ID's must
// match that of the parent EX
auto type = TARGETING::TYPE_EX;
const TARGETING::Target* pEx =
TARGETING::getParent(*pIt,type);

// If this fails, everything is already hosed
assert(pEx != NULL);

hbrtHypId = (pEx)->getAttr<TARGETING::ATTR_ORDINAL_ID>();
}else
{
hbrtHypId = (*pIt)->getAttr<TARGETING::ATTR_ORDINAL_ID>();
}
}
else if( (*pIt)->getAttr<TARGETING::ATTR_TYPE>()
== TARGETING::TYPE_MEMBUF )
Expand Down
5 changes: 3 additions & 2 deletions src/usr/runtime/test/test_customize_attrs_for_payload.H
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2016 */
/* Contributors Listed Below - COPYRIGHT 2016,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -278,7 +278,8 @@ class CustomizeAttrsForPayloadTest: public CxxTest::TestSuite
{
if( (i_configForPhyp)
&& (targetingTargetType==TARGETING::TYPE_CORE)
&& (uniqueRtTargetIds[rtTargetId] <= FOUND_ONE_ID))
&& (uniqueRtTargetIds[rtTargetId] <= FOUND_ONE_ID)
&& (TARGETING::is_fused_mode()))
{
uniqueRtTargetIds[rtTargetId]++;
}
Expand Down

0 comments on commit 3608c1f

Please sign in to comment.