From cb1f5614326054b025774dae1a37ad5bdf07902d Mon Sep 17 00:00:00 2001 From: Brian Stegmiller Date: Sun, 15 Nov 2015 10:52:28 -0600 Subject: HOSTBOOT: Support fused cores Change-Id: I2ad133be733ee9e41590b3b8bd60bd6abe69d1a9 RTC: 126786 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22054 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell Reviewed-by: A. Patrick Williams III --- src/usr/targeting/common/util.C | 34 ++++++++++++++++++++++ .../targeting/common/xmltohb/attribute_types.xml | 32 ++++++++++++++++++++ src/usr/targeting/common/xmltohb/target_types.xml | 4 +++ .../targeting/common/xmltohb/vbu_NAPLES.system.xml | 1 + 4 files changed, 71 insertions(+) (limited to 'src/usr/targeting') diff --git a/src/usr/targeting/common/util.C b/src/usr/targeting/common/util.C index b44b820a8..dd4a7082d 100644 --- a/src/usr/targeting/common/util.C +++ b/src/usr/targeting/common/util.C @@ -310,4 +310,38 @@ bool orderByNodeAndPosition( Target* i_firstProc, return nodeId0 < nodeId1; } +uint8_t is_fused_mode( ) +{ + uint8_t l_fused; + TARGETING::Target * sys = NULL; + TARGETING::targetService().getTopLevelTarget( sys ); + assert(sys != NULL); + TARGETING::PAYLOAD_KIND l_payload = sys->getAttr(); + uint8_t l_attrValue = sys->getAttr(); + + + if (FUSED_CORE_OPTION_USING_DEFAULT_CORES == l_attrValue) + { + // if payload is PHYP, use FUSED mode + // Anything else, use NORMAL mode + if (PAYLOAD_KIND_PHYP == l_payload) + { + l_fused = true; + } + else + { + l_fused = false; + } + } + else + { + l_fused = (l_attrValue == FUSED_CORE_OPTION_USING_NORMAL_CORES) ? + false : true; + } + + + return(l_fused); + +} // end is_fused_mode + } diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index 0aedf3831..748ea9b03 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -16962,4 +16962,36 @@ firmware notes: Platforms should initialize this attribute to AUTO (0) + + FUSED_CORE_OPTION + Enum for FUSED_CORE_OPTION + + USING_DEFAULT_CORES + 0 + + + USING_NORMAL_CORES + 1 + + + USING_FUSED_CORES + 2 + + + + + FUSED_CORE_OPTION + + If not loading PHYP or OPAL, then use this to + decide whether to use FUSED cores or NOT. + + + + + + volatile-zeroed + + + + diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml index ab45e631e..1bb969172 100755 --- a/src/usr/targeting/common/xmltohb/target_types.xml +++ b/src/usr/targeting/common/xmltohb/target_types.xml @@ -311,6 +311,8 @@ SBE_MASTER_INTR_SERVICE_DELAY_US CLEAR_DIMM_SPD_ENABLE MRW_MCS_PREFETCH_RETRY_THRESHOLD + + FUSED_CORE_OPTION @@ -1987,6 +1989,8 @@ DO_ABUS_DECONFIG PLCK_IPL_ATTR_OVERRIDES_EXIST PAYLOAD_IN_MIRROR_MEM + + FUSED_CORE_OPTION diff --git a/src/usr/targeting/common/xmltohb/vbu_NAPLES.system.xml b/src/usr/targeting/common/xmltohb/vbu_NAPLES.system.xml index 14263aa79..aee1b5e93 100644 --- a/src/usr/targeting/common/xmltohb/vbu_NAPLES.system.xml +++ b/src/usr/targeting/common/xmltohb/vbu_NAPLES.system.xml @@ -299,6 +299,7 @@ MRW_MBA_CACHELINE_INTERLEAVE_MODE_CONTROL 1 + -- cgit v1.2.1