diff options
author | Dan Crowell <dcrowell@us.ibm.com> | 2014-01-27 12:52:56 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-02-11 17:10:49 -0600 |
commit | a763c1b156165bc89471a6b643baf6eb57b96f2c (patch) | |
tree | aacca84651ce375be505310bf1b62d5e5d04297d /src/usr/fsi | |
parent | 805b043a187851173874341ec748b4c305c6b9e0 (diff) | |
download | talos-hostboot-a763c1b156165bc89471a6b643baf6eb57b96f2c.tar.gz talos-hostboot-a763c1b156165bc89471a6b643baf6eb57b96f2c.zip |
Targeting updates for alt-master FSI
Preemptively adding the new attributes to support the alt-master
FSI paths. Note that the support to use the new attributes is
not there yet but this should save some bringup test headaches.
Change-Id: I003d1e7453633af27e2d5c305d702f710954f4aa
RTC: 35041
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8376
Tested-by: Jenkins Server
Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/fsi')
-rw-r--r-- | src/usr/fsi/fsidd.C | 14 | ||||
-rw-r--r-- | src/usr/fsi/fsidd.H | 7 |
2 files changed, 13 insertions, 8 deletions
diff --git a/src/usr/fsi/fsidd.C b/src/usr/fsi/fsidd.C index 774cdbc5b..bce0e4f9a 100644 --- a/src/usr/fsi/fsidd.C +++ b/src/usr/fsi/fsidd.C @@ -2104,9 +2104,11 @@ FsiDD::FsiChipInfo_t FsiDD::getFsiInfo( TARGETING::Target* i_target ) if( i_target->tryGetAttr<ATTR_FSI_MASTER_PORT>(info.port) ) { - if( i_target->tryGetAttr<ATTR_FSI_SLAVE_CASCADE>(info.cascade) ) + if( i_target->tryGetAttr<ATTR_FSI_SLAVE_CASCADE> + (info.cascade) ) { - if( !i_target->tryGetAttr<ATTR_FSI_OPTION_FLAGS>(info.flags) ) + if( !i_target->tryGetAttr<ATTR_FSI_OPTION_FLAGS> + (info.flagbits) ) { info.master = NULL; } @@ -2140,13 +2142,13 @@ FsiDD::FsiChipInfo_t FsiDD::getFsiInfo( TARGETING::Target* i_target ) } else { - TARGETING::EntityPath epath; - if( info.master->tryGetAttr<TARGETING::ATTR_PHYS_PATH>(epath) ) + TARGETING::EntityPath master_phys; + if( info.master->tryGetAttr<TARGETING::ATTR_PHYS_PATH>(master_phys) ) { info.linkid.node = - epath.pathElementOfType(TARGETING::TYPE_NODE).instance; + master_phys.pathElementOfType(TARGETING::TYPE_NODE).instance; info.linkid.proc = - epath.pathElementOfType(TARGETING::TYPE_PROC).instance; + master_phys.pathElementOfType(TARGETING::TYPE_PROC).instance; info.linkid.type = static_cast<uint8_t>(info.type); info.linkid.port = info.port; } diff --git a/src/usr/fsi/fsidd.H b/src/usr/fsi/fsidd.H index e548b84a6..755330b33 100644 --- a/src/usr/fsi/fsidd.H +++ b/src/usr/fsi/fsidd.H @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2013 */ +/* COPYRIGHT International Business Machines Corp. 2011,2014 */ /* */ /* p1 */ /* */ @@ -184,7 +184,10 @@ class FsiDD TARGETING::FSI_MASTER_TYPE type; ///< Master or Cascaded Master uint8_t port; ///< Which port is this chip hanging off of uint8_t cascade; ///< Slave cascade position - uint16_t flags; ///< Reserved for any special flags we might need + union { + TARGETING::FsiOptionFlags flagbits; ///< Special flags + uint16_t flags; ///< Special flags + }; FsiLinkId_t linkid; ///< Id for traces and error logs }; |