From 252863ed1979ecf96fa5cdc2b13e3a37a0657c77 Mon Sep 17 00:00:00 2001 From: Dan Crowell Date: Mon, 11 Mar 2013 09:06:57 -0500 Subject: Skip all HDAT stuff in AVP mode Change-Id: Ic2940a7f70c8d6f4a6e4afd6ddfeb607a71fe749 RTC: 65948 CQ: SW191055 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/3507 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III --- src/usr/hwpf/hwp/start_payload/start_payload.C | 22 ++++++++++++++++++++++ src/usr/runtime/hdatservice.C | 2 +- src/usr/runtime/populate_attributes.C | 8 +------- .../targeting/common/xmltohb/attribute_types.xml | 15 +++++++++++++++ 4 files changed, 39 insertions(+), 8 deletions(-) (limited to 'src/usr') diff --git a/src/usr/hwpf/hwp/start_payload/start_payload.C b/src/usr/hwpf/hwp/start_payload/start_payload.C index 205dc105a..89c42f811 100644 --- a/src/usr/hwpf/hwp/start_payload/start_payload.C +++ b/src/usr/hwpf/hwp/start_payload/start_payload.C @@ -133,6 +133,28 @@ void* call_host_runtime_setup( void *io_pArgs ) } } + // Map the Host Data into the VMM if applicable + // Note: call will set ATTR_PAYLOAD_KIND appropriately + l_err = RUNTIME::load_host_data(); + if( l_err ) + { + break; + } + + // Skip the rest in AVP mode + TARGETING::Target * sys = NULL; + TARGETING::targetService().getTopLevelTarget( sys ); + assert(sys != NULL); + + TARGETING::ATTR_PAYLOAD_KIND_type payload_kind + = sys->getAttr(); + if( TARGETING::PAYLOAD_KIND_AVP == payload_kind ) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Skipping host_runtime_setup in AVP mode" ); + break; + } + // Write the HostServices attributes into mainstore l_err = RUNTIME::populate_attributes(); if ( l_err ) diff --git a/src/usr/runtime/hdatservice.C b/src/usr/runtime/hdatservice.C index 733063281..a6eceed51 100644 --- a/src/usr/runtime/hdatservice.C +++ b/src/usr/runtime/hdatservice.C @@ -318,7 +318,7 @@ errlHndl_t RUNTIME::load_host_data( void ) // if any AVP flags are set, override the payload kind if( (mnfg_flags & TARGETING::MNFG_FLAG_BIT_MNFG_AVP_ENABLE) - || (mnfg_flags & TARGETING::MNFG_FLAG_BIT_MNFG_AVP_ENABLE) ) + || (mnfg_flags & TARGETING::MNFG_FLAG_BIT_MNFG_HDAT_AVP_ENABLE) ) { if( payload_kind != TARGETING::PAYLOAD_KIND_AVP ) { diff --git a/src/usr/runtime/populate_attributes.C b/src/usr/runtime/populate_attributes.C index 30514ca6b..650f0d927 100644 --- a/src/usr/runtime/populate_attributes.C +++ b/src/usr/runtime/populate_attributes.C @@ -520,13 +520,7 @@ errlHndl_t populate_attributes( void ) do { TRACFCOMP( g_trac_runtime, "Running populate_attributes" ); - // Map the Host Data into the VMM - errhdl = RUNTIME::load_host_data(); - if( errhdl ) - { - break; - } - + // Write the System-level Attributes errhdl = populate_system_attributes(); if( errhdl ) { diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index 0a11d5066..9dc1e6194 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -2517,62 +2517,77 @@ note that the MNFG_FLAG_BIT values are of type uint32_t + MNFG_THRESHOLDS 0x00000001 + MNFG_AVP_ENABLE 0x00000002 + MNFG_HDAT_AVP_ENABLE 0x00000004 + MNFG_SRC_TERM 0x00000008 + MNFG_IPL_MEMORY_CE_CHECKINGE 0x00000010 + MNFG_FAST_BACKGROUND_SCRUB 0x00000020 + MNFG_TEST_DRAM_REPAIRS 0x00000040 + MNFG_DISABLE_DRAM_REPAIRS 0x00000080 + MNFG_ENABLE_EXHAUSTIVE_PATTERN_TEST 0x00000100 + MNFG_ENABLE_STANDARD_PATTERN_TEST 0x00000200 + MNFG_ENABLE_MINIMUM_PATTERN_TEST 0x00000400 + MNFG_DISABLE_FABRIC_eREPAIR 0x00000800 + MNFG_DISABLE_MEMORY_eREPAIR 0x00001000 + MNFG_FABRIC_DEPLOY_LANE_SPARES 0x00002000 + MNFG_DMI_DEPLOY_LANE_SPARES 0x00004000 -- cgit v1.2.1