Skip to content

Commit

Permalink
Fixing XBUS PG lookup to mark both E44D and E55D as valid entries
Browse files Browse the repository at this point in the history
Currently, there are two version of the MVPD PG keyword:
- E44D == XBUS0 bad
- E45D and E55D == XBUS0 and 2 bad
Spec indicates that both iox (second nibble) and pbiox
(third nibble) are bad for sforza and monza type modules.
We support generically the following cases:
- 0xE50D --> xbus chiplet good
- 0xE40D --> xbus chiplet good
and rely solely on the pbiox as the Xbus target indicator
(0x0040, 0x0020, 0x0010) for all types of chips.

Change-Id: If7a3c128180321adab083f3e40f2dd0a645318e7
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37007
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Dean Sanner <dsanner@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
Prachi Gupta authored and dcrowell77 committed Mar 4, 2017
1 parent 6568a79 commit c710ea2
Showing 1 changed file with 11 additions and 1 deletion.
12 changes: 11 additions & 1 deletion src/include/usr/hwas/common/hwasCommon.H
Expand Up @@ -163,9 +163,19 @@ const uint32_t VPD_CP00_PG_XBUS_INDEX = 6;
// Nimbus doesn't physically have PBIOX0 and IOX0. IOX0 is
// taken care of by xbus links, need to handle PBIOX0 as part of
// the full chiplet good, so full good is E40D instead of E44D
// Currently, there are two versions of the MVPD PG keyword:
// 0xE44D == XBUS0 bad
// 0xE45D and 0xE55D == XBUS 0,2 bad
// Spec indicates that both iox (second nibble) and pbiox
// (third nibble) are bad for sforza and monza type modules.
// We support generically the following cases:
// 0xE50D --> xbus chiplet good
// 0xE40D --> xbus chiplet good
// and rely solely on the pbiox as the Xbus target indicator
// (0x0040, 0x0020, 0x0010) for all types of chips.
const uint32_t VPD_CP00_PG_XBUS_GOOD_NIMBUS = 0xE40D;
const uint32_t VPD_CP00_PG_XBUS_GOOD_CUMULUS= 0xE00D;
const uint32_t VPD_CP00_PG_XBUS_PG_MASK = 0x0070;
const uint32_t VPD_CP00_PG_XBUS_PG_MASK = 0x00170;
const uint32_t VPD_CP00_PG_XBUS_IOX[3] = {0x0040, 0x0020, 0x0010};

const uint32_t VPD_CP00_PG_MCxx_INDEX[4] = {7, 7, 8, 8}; // by MCS
Expand Down

0 comments on commit c710ea2

Please sign in to comment.