From 52ca8121f1ed4aa7cabd10ced3a912ee4af470c4 Mon Sep 17 00:00:00 2001 From: Corey Swenson Date: Wed, 10 Jan 2018 11:10:44 -0600 Subject: Leave MCS acker open until Istep14 New MCD changes require a HB workaround. Moved p9_revert_sbe_mcs_setup HWP from Istep06 to Istep14. Change-Id: If42b90127a1f0fb90003e7e6c147c94909d2a487 CMVC-Prereq: 1042570 CMVC-Coreq: 1042845 Backport: release-fips910 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/51744 Tested-by: Jenkins Server Reviewed-by: Dean Sanner Reviewed-by: William G. Hoffa Tested-by: Jenkins OP Build CI Reviewed-by: Daniel M. Crowell --- .../istep06/call_host_revert_sbe_mcs_setup.C | 11 +++--- src/usr/isteps/istep14/call_proc_setup_bars.C | 46 +++++++++++++++++++++- src/usr/isteps/istep14/makefile | 5 ++- 3 files changed, 55 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/usr/isteps/istep06/call_host_revert_sbe_mcs_setup.C b/src/usr/isteps/istep06/call_host_revert_sbe_mcs_setup.C index f82373a01..d328e0e85 100644 --- a/src/usr/isteps/istep06/call_host_revert_sbe_mcs_setup.C +++ b/src/usr/isteps/istep06/call_host_revert_sbe_mcs_setup.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2017 */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -63,14 +63,15 @@ void* call_host_revert_sbe_mcs_setup( void *io_pArgs ) // cast the target to a fapi2 target fapi2::Target l_fapi_master_proc( l_masterProc ); - //Invode p9_revert_sbe_mcs_setup + //Invoke p9_revert_sbe_mcs_setup // Pass in boolean describing if we are using the FSP or not // If we are using the FSP then we will ask off the SBE fir // bits on the TP Local Fir register as the FSP with handle // SBE errors - FAPI_INVOKE_HWP( l_err, p9_revert_sbe_mcs_setup, - l_fapi_master_proc, - INITSERVICE::spBaseServicesEnabled()); + // TODO: RTC 184860 Remove MCS acker workaround + //FAPI_INVOKE_HWP( l_err, p9_revert_sbe_mcs_setup, + // l_fapi_master_proc, + // INITSERVICE::spBaseServicesEnabled()); if (l_err) { diff --git a/src/usr/isteps/istep14/call_proc_setup_bars.C b/src/usr/isteps/istep14/call_proc_setup_bars.C index 8e24c1b8b..7b6843346 100644 --- a/src/usr/isteps/istep14/call_proc_setup_bars.C +++ b/src/usr/isteps/istep14/call_proc_setup_bars.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2016 */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -37,6 +37,10 @@ #include #include +// TODO: RTC 184860 Remove MCS acker workaround +#include +#include + //HWP Invoker #include @@ -56,6 +60,46 @@ void* call_proc_setup_bars (void *io_pArgs) TRACDCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_proc_setup_bars entry" ); + + // ******************************* + // Start MCS acker workaround + // TODO: RTC 184860 Remove MCS acker workaround + // ******************************* + TARGETING::Target * l_masterProc; + TARGETING::targetService().masterProcChipTargetHandle( l_masterProc ); + + TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, + "Running p9_revert_sbe_mcs_setup on " + "target HUID %.8X", + TARGETING::get_huid(l_masterProc)); + + // cast the target to a fapi2 target + fapi2::Target l_fapi_master_proc( l_masterProc ); + + //Invoke p9_revert_sbe_mcs_setup + // Pass in boolean describing if we are using the FSP or not + // If we are using the FSP then we will ask off the SBE fir + // bits on the TP Local Fir register as the FSP with handle + // SBE errors + FAPI_INVOKE_HWP( l_errl, p9_revert_sbe_mcs_setup, + l_fapi_master_proc, + INITSERVICE::spBaseServicesEnabled()); + + if (l_errl) + { + TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%.8X: p9_revert_sbe_mcs_setup", + l_errl->reasonCode()); + // Create IStep error log and cross reference error + l_stepError.addErrorDetails(l_errl); + // Commit error + errlCommit(l_errl,SBE_COMP_ID); + } + // ******************************* + // End MCS acker workaround + // ******************************* + + // Get all Centaur targets TARGETING::TargetHandleList l_cpuTargetList; getAllChips(l_cpuTargetList, TARGETING::TYPE_PROC ); diff --git a/src/usr/isteps/istep14/makefile b/src/usr/isteps/istep14/makefile index 58d9a61ae..4a994ad34 100644 --- a/src/usr/isteps/istep14/makefile +++ b/src/usr/isteps/istep14/makefile @@ -5,7 +5,7 @@ # # OpenPOWER HostBoot Project # -# Contributors Listed Below - COPYRIGHT 2015,2017 +# Contributors Listed Below - COPYRIGHT 2015,2018 # [+] International Business Machines Corp. # # @@ -60,6 +60,9 @@ include ${ROOTPATH}/procedure.rules.mk include ${PROCEDURE_PATH}/hwp/nest/p9_exit_cache_contained.mk include ${PROCEDURE_PATH}/hwp/nest/p9_mss_setup_bars.mk +# TODO: RTC 184860 Remove MCS acker workaround +include ${ROOTPATH}/src/import/chips/p9/procedures/hwp/nest/p9_revert_sbe_mcs_setup.mk + # TODO: RTC 159164: Multiple definition linker errors on HWPs that include the # same *.o file in their *.mk files # ---- Workaround: Compile the HWP directly below -- cgit v1.2.1