diff options
author | Brad Bishop <bradleyb@us.ibm.com> | 2012-03-21 15:56:09 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-04-24 09:44:54 -0500 |
commit | f4e49418fd0743ab0d143f0ab3c505baefe58bfa (patch) | |
tree | 9301803411743f6e31bd4617e76ea54376c58f54 /src/usr/diag/mdia/mdia.C | |
parent | 5ac7921a5f77d7d33e7cc86f91522de4751f98b0 (diff) | |
download | talos-hostboot-f4e49418fd0743ab0d143f0ab3c505baefe58bfa.tar.gz talos-hostboot-f4e49418fd0743ab0d143f0ab3c505baefe58bfa.zip |
Initial memory diagnostics entry point support.
This is a first take at the memory diagnostics entry
point function; the function called by the istep dispatcher.
Change-Id: Id99b05e13dd723cea574e993a3cfc6e298f475b8
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/784
Tested-by: Jenkins Server
Reviewed-by: LARINA M. DSOUZA <larsouza@in.ibm.com>
Reviewed-by: Zane Shelley <zshelle@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/diag/mdia/mdia.C')
-rw-r--r-- | src/usr/diag/mdia/mdia.C | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/src/usr/diag/mdia/mdia.C b/src/usr/diag/mdia/mdia.C new file mode 100644 index 000000000..93fc2bcbd --- /dev/null +++ b/src/usr/diag/mdia/mdia.C @@ -0,0 +1,89 @@ +// IBM_PROLOG_BEGIN_TAG +// This is an automatically generated prolog. +// +// $Source: src/usr/diag/mdia/mdia.C $ +// +// IBM CONFIDENTIAL +// +// COPYRIGHT International Business Machines Corp. 2012 +// +// p1 +// +// Object Code Only (OCO) source materials +// Licensed Internal Code Source Materials +// IBM HostBoot Licensed Internal Code +// +// The source code for this program is not published or other- +// wise divested of its trade secrets, irrespective of what has +// been deposited with the U.S. Copyright Office. +// +// Origin: 30 +// +// IBM_PROLOG_END +/** + * @file mdia.C + * @brief mdia entry points, utility function implementations + */ + +#include "mdiafwd.H" +#include "mdiaglobals.H" +#include "mdiatrace.H" + +using namespace TARGETING; + +namespace MDIA +{ + +errlHndl_t runStep(const TargetHandleList & i_targetList) +{ + MDIA_FAST("memory diagnostics entry (runStep)"); + + // memory diagnostics ipl step entry point + + errlHndl_t err = 0; + + Globals globals; + + // get the workflow for each target mba passed in. + // associate each workflow with the target handle. + + WorkFlowAssocList list; + + TargetHandleList::const_iterator tit; + DiagMode mode; + + for(tit = i_targetList.begin(); tit != i_targetList.end(); ++tit) + { + err = getMbaDiagnosticMode(globals, *tit, mode); + + if(err) + { + break; + } + + err = getMbaWorkFlow(mode, list[*tit]); + + if(err) + { + break; + } + } + + if(!err) + { + // TODO...run the workflow through the state machine + } + + // ensure threads and pools are shutdown when finished + + doStepCleanup(globals); + + return err; +} + +void doStepCleanup(const Globals & i_globals) +{ + // TODO ... stop the state machine + // TODO ... stop the command monitor +} +} |