diff options
author | spashabk-in <shakeebbk@in.ibm.com> | 2018-04-16 01:51:22 -0500 |
---|---|---|
committer | Sachin Gupta <sgupta2m@in.ibm.com> | 2018-06-01 23:26:33 -0400 |
commit | c1da4a458459a9ab8a09421069d42f3154bd3792 (patch) | |
tree | 76ec6db75e66eec61ebc9818b8f037a3209438d0 /src/sbefw/core/sbecmdprocessor.C | |
parent | 13c1572a60e09a4e2e39ed951edaa246af30e37a (diff) | |
download | talos-sbe-c1da4a458459a9ab8a09421069d42f3154bd3792.tar.gz talos-sbe-c1da4a458459a9ab8a09421069d42f3154bd3792.zip |
Handle hreset of SBE
Figure out hreset from l1 loader, and if it is hreset avoid
l2 loader and instead jump to kernel boot.
In kernel boot - avoid contructor calls and any intialization
RTC: 165477
Change-Id: Ia10c83dd7c15fb5115964cba315fbedfe10a636e
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57246
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: RAJA DAS <rajadas2@in.ibm.com>
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/sbefw/core/sbecmdprocessor.C')
-rw-r--r-- | src/sbefw/core/sbecmdprocessor.C | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/sbefw/core/sbecmdprocessor.C b/src/sbefw/core/sbecmdprocessor.C index 9dda2164..32645255 100644 --- a/src/sbefw/core/sbecmdprocessor.C +++ b/src/sbefw/core/sbecmdprocessor.C @@ -258,9 +258,17 @@ void sbeSyncCommandProcessor_routine(void *i_pArg) // is ready now to receive data on its interfaces (void)SbeRegAccess::theSbeRegAccess().setSbeReady(); - // Check the destination bit at the start - if(true == SbeRegAccess::theSbeRegAccess().isDestBitRuntime()) + if (SBE_GLOBAL->isHreset) { + SBE::clearHresetBit(); + SBE_INFO(SBE_FUNC"Hreset, going back to the state before reset"); + (void)SbeRegAccess::theSbeRegAccess(). + updateSbeState( + (sbeState)SbeRegAccess::theSbeRegAccess().getSbeState()); + } + else if(true == SbeRegAccess::theSbeRegAccess().isDestBitRuntime()) + { + // Check the destination bit at the start SBE_INFO(SBE_FUNC"Destination bit tells us to go to runtime"); (void)SbeRegAccess::theSbeRegAccess(). updateSbeState(SBE_STATE_RUNTIME); |