diff options
author | Christian R. Geddes <crgeddes@us.ibm.com> | 2018-04-10 15:59:26 -0400 |
---|---|---|
committer | Christian R. Geddes <crgeddes@us.ibm.com> | 2018-04-10 16:02:42 -0400 |
commit | 1c4c810a584f0b7b7b51ecfea7451e9c0152ea7e (patch) | |
tree | e68d47cda65d312a84fded8288863950d15038f4 /src/usr | |
parent | 4f32915aa1240d07bb2671010f95695ba5f306c3 (diff) | |
download | talos-hostboot-1c4c810a584f0b7b7b51ecfea7451e9c0152ea7e.tar.gz talos-hostboot-1c4c810a584f0b7b7b51ecfea7451e9c0152ea7e.zip |
Revert "Clear perv scrach register prior to triggering HRESET"
This reverts commit 4f32915aa1240d07bb2671010f95695ba5f306c3.
Change-Id: Ie51fd274d018df63aef6f725bf57c7b1f7f59265
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57026
CI-Ready: Christian R. Geddes <crgeddes@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Tested-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r-- | src/usr/sbeio/common/sbe_retry_handler.C | 54 |
1 files changed, 6 insertions, 48 deletions
diff --git a/src/usr/sbeio/common/sbe_retry_handler.C b/src/usr/sbeio/common/sbe_retry_handler.C index 60ced2eca..5cfa6f32f 100644 --- a/src/usr/sbeio/common/sbe_retry_handler.C +++ b/src/usr/sbeio/common/sbe_retry_handler.C @@ -434,19 +434,10 @@ void SbeRetryHandler::main_sbe_handler( TARGETING::Target * i_target ) { this->iv_currentSideBootAttempts++; - // Prior to performing the hreset we want to zero out the scratch registers - // this will force the SBE to use its own image to populate the values it - // is expecting from the scratch regs. - l_errl = clearSbeScratchRegisters(i_target); - - if(!l_errl) - { - // For now we only use HRESET during runtime, the bool param - // we are passing in is supposed to be FALSE if runtime, TRUE is ipl time - FAPI_INVOKE_HWP(l_errl, p9_sbe_hreset, - l_fapi2_proc_target, false); - } - + // For now we only use HRESET during runtime, the bool param + // we are passing in is supposed to be FALSE if runtime, TRUE is ipl time + FAPI_INVOKE_HWP(l_errl, p9_sbe_hreset, + l_fapi2_proc_target, false); if(l_errl) { SBE_TRACF("ERROR: call p9_sbe_hreset, PLID=0x%x", @@ -1178,7 +1169,7 @@ errlHndl_t SbeRetryHandler::switch_sbe_sides(TARGETING::Target * i_target) if( l_errl ) { SBE_TRACF( ERR_MRK"switch_sbe_sides: SCOM device read " - "PERV_SB_CS_SCOM (0x%.8X), proc target = %.8X, " + "PERV_SB_CS_SCOM (0x%.4X), proc target = %.8X, " "RC=0x%X, PLID=0x%lX", PERV_SB_CS_SCOM, // 0x50008 TARGETING::get_huid(i_target), @@ -1215,7 +1206,7 @@ errlHndl_t SbeRetryHandler::switch_sbe_sides(TARGETING::Target * i_target) if( l_errl ) { SBE_TRACF( ERR_MRK"switch_sbe_sides: SCOM device write " - "PERV_SB_CS_SCOM (0x%.8X), proc target = %.8X, " + "PERV_SB_CS_SCOM (0x%.4X), proc target = %.8X, " "RC=0x%X, PLID=0x%lX", PERV_SB_CS_SCOM, // 0x50008 TARGETING::get_huid(i_target), @@ -1247,37 +1238,4 @@ errlHndl_t SbeRetryHandler::switch_sbe_sides(TARGETING::Target * i_target) return l_errl; } -errlHndl_t SbeRetryHandler::clearSbeScratchRegisters(TARGETING::Target * i_target) -{ - SBE_TRACF(ENTER_MRK "clearSbeScratchRegisters()"); - errlHndl_t l_errl = nullptr; - - uint64_t l_writeVal = 0; - size_t l_opSize = sizeof(uint64_t); - - // Loop through all 8 SBE scratch registers writing 0's to each - // one via SCOM - for(uint64_t l_reg = PERV_SCRATCH_REGISTER_1_SCOM; - l_reg <= PERV_SCRATCH_REGISTER_8_SCOM; - l_reg++) - { - l_errl = DeviceFW::deviceOp( - DeviceFW::WRITE, - i_target, - &l_writeVal, - l_opSize, - DEVICE_SCOM_ADDRESS(l_reg) ); - if(l_errl) - { - SBE_TRACF( "clearSbeScratchRegisters: Error attempting to zero out 0x%.8X via SCOM on proc w/ HUID: 0x%.8X", - l_reg, - TARGETING::get_huid(i_target)); - break; - } - } - - SBE_TRACF(EXIT_MRK "clearSbeScratchRegisters()"); - return l_errl; -} - } // End of namespace SBEIO |