summaryrefslogtreecommitdiffstats
path: root/src/hwpf/src/plat/target.C
diff options
context:
space:
mode:
authorSachin Gupta <sgupta2m@in.ibm.com>2016-10-31 14:08:14 -0500
committerAMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>2016-11-14 03:58:02 -0500
commit47cc99ec4522b6a2729c7d4435963929fb861df0 (patch)
treec8983f1e92266e15228140150db0dd831133a25b /src/hwpf/src/plat/target.C
parentc78869d4678eea4332fda6fa9fe3d17e4f8ea9b2 (diff)
downloadtalos-sbe-47cc99ec4522b6a2729c7d4435963929fb861df0.tar.gz
talos-sbe-47cc99ec4522b6a2729c7d4435963929fb861df0.zip
Workaround for function versus present
Change-Id: Ib37ae27c93ee1707ba02f17969c3118919219806 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/32028 Reviewed-by: RAJA DAS <rajadas2@in.ibm.com> Reviewed-by: Santosh S. Puranik <santosh.puranik@in.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Shakeeb A. Pasha B K <shakeebbk@in.ibm.com> Reviewed-by: AMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>
Diffstat (limited to 'src/hwpf/src/plat/target.C')
-rw-r--r--src/hwpf/src/plat/target.C25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/hwpf/src/plat/target.C b/src/hwpf/src/plat/target.C
index 9ff1a75b..301e8534 100644
--- a/src/hwpf/src/plat/target.C
+++ b/src/hwpf/src/plat/target.C
@@ -312,13 +312,36 @@ namespace fapi2
bool & b_present)
{
+ // TODO via RTC 164026
+ // In nimbus all pervasive chiplets (non quad, non core), are present
+ // other than OBUS1 and OBUS2. In cumulus all chiplets are present.
+ // Though on field parts, all chiplets which are present should be
+ // functional. But in lab when we can get partial good parts, its
+ // possible that few chiplets are not functional. So we need to
+ // differentiate between present versus functional chiplets.
+ // We need to see if we need to use same strategy for cores/caches as
+ // well.
+ // Also in current code we are hard coding the chiplets. We need to use
+ // attribute to differentiate between nimbus versus cumulus config.
+ static const size_t OBUS1 = 10;
+ static const size_t OBUS2 = 11;
+ if(( i_chiplet_target.getChipletNumber() != OBUS1 ) &&
+ ( i_chiplet_target.getChipletNumber() != OBUS2 ) &&
+ ( i_chiplet_target.getChipletNumber() < EQ_CHIPLET_OFFSET ) )
+ {
+ static_cast<plat_target_handle_t&>((i_chiplet_target.operator()())).setPresent();
+ }
// Find the PERV target number in the partial good initialization
// array
+
FAPI_TRY(plat_PervPGTargets(i_chiplet_target, b_present));
if (b_present)
{
- static_cast<plat_target_handle_t&>((i_chiplet_target.operator()())).setPresent();
+ if( i_chiplet_target.getChipletNumber() >= EQ_CHIPLET_OFFSET )
+ {
+ static_cast<plat_target_handle_t&>((i_chiplet_target.operator()())).setPresent();
+ }
static_cast<plat_target_handle_t&>((i_chiplet_target.operator()())).setFunctional(true);
}
else
OpenPOWER on IntegriCloud