diff options
Diffstat (limited to 'src/usr/isteps/istep13/call_proc_mcs_skewadjust.C')
-rw-r--r-- | src/usr/isteps/istep13/call_proc_mcs_skewadjust.C | 61 |
1 files changed, 57 insertions, 4 deletions
diff --git a/src/usr/isteps/istep13/call_proc_mcs_skewadjust.C b/src/usr/isteps/istep13/call_proc_mcs_skewadjust.C index 3f99ffbb8..5d105cc8e 100644 --- a/src/usr/isteps/istep13/call_proc_mcs_skewadjust.C +++ b/src/usr/isteps/istep13/call_proc_mcs_skewadjust.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015 */ +/* Contributors Listed Below - COPYRIGHT 2015,2016 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -23,6 +23,21 @@ /* */ /* IBM_PROLOG_END_TAG */ #include <errl/errlentry.H> +#include <errl/errluserdetails.H> +#include <errl/errludtarget.H> +#include <errl/errlmanager.H> +#include <isteps/hwpisteperror.H> +#include <initservice/isteps_trace.H> + +//HWP Invoker +#include <fapi2/plat_hwp_invoker.H> + +//Targeting Support +#include <targeting/common/utilFilter.H> +#include <fapi2/target.H> + +//From Import Directory (EKB Repository) +#include <p9_mem_skewadjust.H> using namespace ERRORLOG; @@ -30,9 +45,47 @@ namespace ISTEP_13 { void* call_proc_mcs_skewadjust (void *io_pArgs) { - errlHndl_t l_err = NULL; - //@TODO RTC:133831 call p9_mem_skewadjust.C HWP - return l_err; + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_proc_mcs_skewadjust entry" ); + ISTEP_ERROR::IStepError l_StepError; + errlHndl_t l_errl = NULL; + do { + //Use targeting code to get a list of all proc chiplets + TARGETING::TargetHandleList l_procChiplets; + getAllChiplets( l_procChiplets, TARGETING::TYPE_PROC ); + + for (const auto & l_procChiplet: l_procChiplets) + { + const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> + l_fapi_proc_target(l_procChiplet); + + // Dump current run on target + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Running p9_mem_skewadjust HWP on " + "target HUID %.8X", TARGETING::get_huid(l_procChiplet)); + + // call p9_mem_skewadjust.C HWP + FAPI_INVOKE_HWP( l_errl, + p9_mem_skewadjust, + l_fapi_proc_target); + + if(l_errl) + { + ErrlUserDetailsTarget(l_procChiplet).addToLog(l_errl); + l_StepError.addErrorDetails( l_errl ); + errlCommit( l_errl, HWPF_COMP_ID ); + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "p9_mem_skewadjust:: failed on mcs with HUID : %d",TARGETING::get_huid(l_procChiplet) ); + } + else + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "SUCCESS : p9_mem_skewadjust HWP( )" ); + } + } + }while(0); + + // end task, returning any errorlogs to IStepDisp + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_proc_mcs_skewadjust exit" ); + return l_StepError.getErrorHandle(); } }; |