diff options
Diffstat (limited to 'src/usr/isteps/istep14')
-rw-r--r-- | src/usr/isteps/istep14/call_proc_setup_bars.C | 33 | ||||
-rw-r--r-- | src/usr/isteps/istep14/makefile | 23 |
2 files changed, 39 insertions, 17 deletions
diff --git a/src/usr/isteps/istep14/call_proc_setup_bars.C b/src/usr/isteps/istep14/call_proc_setup_bars.C index fb316c455..8e24c1b8b 100644 --- a/src/usr/isteps/istep14/call_proc_setup_bars.C +++ b/src/usr/isteps/istep14/call_proc_setup_bars.C @@ -56,8 +56,6 @@ void* call_proc_setup_bars (void *io_pArgs) TRACDCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_proc_setup_bars entry" ); - - // @@@@@ CUSTOM BLOCK: @@@@@ // Get all Centaur targets TARGETING::TargetHandleList l_cpuTargetList; getAllChips(l_cpuTargetList, TARGETING::TYPE_PROC ); @@ -108,32 +106,41 @@ void* call_proc_setup_bars (void *io_pArgs) //---------------------------------------------------------------------- // run proc_setup_bars on all CPUs //---------------------------------------------------------------------- - std::vector<fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>> l_proc_chips; - - for(uint8_t i = 0; i < l_cpuTargetList.size(); i++) + for (auto l_procChip : l_cpuTargetList) { - l_proc_chips.push_back(l_cpuTargetList[i]); - } - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "call p9_setup_bars"); + "call p9_setup_bars: Target HUID %.8X", + TARGETING::get_huid(l_procChip) ); - // call the HWP with each fapi::Target - FAPI_INVOKE_HWP( l_errl, p9_setup_bars, l_proc_chips, BAR_SETUP_PHASE1 ); + // Call the HWP with each fapi::Target + FAPI_INVOKE_HWP( l_errl, p9_setup_bars, l_procChip ); if ( l_errl ) { + // Capture the target data in the elog + ErrlUserDetailsTarget(l_procChip).addToLog( l_errl ); + + // Create IStep error log and cross reference to error that occurred + l_stepError.addErrorDetails( l_errl ); + + // Commit Error + errlCommit( l_errl, HWPF_COMP_ID ); + TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, "ERROR : p9_setup_bars" ); + + // break and return with error + break; + } else { TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "SUCCESS : p9_setup_bars" ); } - } // end if !l_errl + } - // @@@@@ END CUSTOM BLOCK: @@@@@ + } // end if !l_errl if ( l_errl ) { diff --git a/src/usr/isteps/istep14/makefile b/src/usr/isteps/istep14/makefile index 836edad78..075e197ea 100644 --- a/src/usr/isteps/istep14/makefile +++ b/src/usr/isteps/istep14/makefile @@ -52,17 +52,32 @@ OBJS += call_proc_exit_cache_contained.o OBJS += call_host_mpipl_service.o include ${ROOTPATH}/procedure.rules.mk -include ${PROCEDURE_PATH}/hwp/nest/p9_htm_setup.mk -include ${PROCEDURE_PATH}/hwp/nest/p9_pcie_config.mk include ${PROCEDURE_PATH}/hwp/nest/p9_exit_cache_contained.mk -include ${PROCEDURE_PATH}/hwp/nest/p9_setup_bars.mk include ${PROCEDURE_PATH}/hwp/nest/p9_mss_setup_bars.mk + +# TODO: RTC 159164: Multiple definition linker errors on HWPs that include the +# same *.o file in their *.mk files +# ---- Workaround: Compile the HWP directly below +OBJS += p9_htm_setup.o +OBJS += p9_htm_start.o +OBJS += p9_htm_reset.o +OBJS += p9_htm_adu_ctrl.o +OBJS += p9_adu_coherent_utils.o +OBJS += p9_pcie_config.o +OBJS += p9_setup_bars.o +OBJS += p9_fbc_utils.o +OBJS += p9_fbc_smp_utils.o + +#include ${PROCEDURE_PATH}/hwp/nest/p9_htm_setup.mk +#include ${PROCEDURE_PATH}/hwp/nest/p9_pcie_config.mk +#include ${PROCEDURE_PATH}/hwp/nest/p9_setup_bars.mk +# ---- End workaround + # include ${PROCEDURE_PATH}/hwp/memory/p9_mss_memdiag.mk # include ${PROCEDURE_PATH}/hwp/memory/p9_mss_thermal_init.mk include ${PROCEDURE_PATH}/hwp/memory/p9_mss_power_cleanup.mk include ${ROOTPATH}/config.mk - VPATH += ${PROCEDURE_PATH}/hwp/nest/ ${PROCEDURE_PATH}/hwp/memory/ VPATH += ${PROCEDURE_PATH}/hwp/memory/lib/eff_config/ VPATH += ${PROCEDURE_PATH}/hwp/memory/lib/utils/ |