summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps/istep13/call_proc_mcs_skewadjust.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/isteps/istep13/call_proc_mcs_skewadjust.C')
-rw-r--r--src/usr/isteps/istep13/call_proc_mcs_skewadjust.C61
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();
}
};
OpenPOWER on IntegriCloud