diff options
author | crgeddes <crgeddes@us.ibm.com> | 2017-05-23 16:45:40 -0500 |
---|---|---|
committer | Christian R. Geddes <crgeddes@us.ibm.com> | 2017-05-24 12:31:40 -0400 |
commit | 718ee2a82eb5cf9c9b534aa96b317cddbf9c09cc (patch) | |
tree | a32e58ea865518ff60c00f714183f8e1ebb4647e /src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C | |
parent | 60c97af36adbda3ff015356311e4d4557d785cfe (diff) | |
download | talos-hostboot-718ee2a82eb5cf9c9b534aa96b317cddbf9c09cc.tar.gz talos-hostboot-718ee2a82eb5cf9c9b534aa96b317cddbf9c09cc.zip |
Revert "Use query_cache_state hwp before scoming ex's in cme_firinit"
This reverts commit 12e8b2c5e93434b7a277155f2717e7e3b20ec107.
Change-Id: I6f8ad94251de54ced2a6149ab8f5d0986d657c2d
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40884
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Thi N. Tran <thi@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40913
Reviewed-by: Hostboot Team <hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C | 65 |
1 files changed, 15 insertions, 50 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C b/src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C index 58de8525f..a21122099 100644 --- a/src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C +++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_cme_firinit.C @@ -56,7 +56,6 @@ // Includes // ---------------------------------------------------------------------- #include <p9_pm_cme_firinit.H> -#include <p9_query_cache_access_state.H> // ---------------------------------------------------------------------- // Constant Definitions @@ -224,68 +223,34 @@ fapi2::ReturnCode pm_cme_fir_reset( const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target) { FAPI_IMP("pm_cme_fir_reset start"); + uint8_t l_firinit_done_flag; - auto l_eqChiplets = i_target.getChildren<fapi2::TARGET_TYPE_EQ> + auto l_exChiplets = i_target.getChildren<fapi2::TARGET_TYPE_EX> (fapi2::TARGET_STATE_FUNCTIONAL); FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PM_FIRINIT_DONE_ONCE_FLAG, i_target, l_firinit_done_flag), "ERROR: Failed to fetch the entry status of FIRINIT"); - for (auto l_eq_chplt : l_eqChiplets) + for (auto l_ex_chplt : l_exChiplets) { - //We cannot rely on the HWAS state because during an MPIPL - //the cores get stopped and the SP doesnt know until an - //attr sync occurs with the platform. We must use the - //query_cache_state to safely determine if we can scom - //the ex targets - fapi2::ReturnCode l_rc; - bool l_l2_is_scanable = false; - bool l_l3_is_scanable = false; - bool l_l2_is_scomable = false; - bool l_l3_is_scomable = false; - uint8_t l_chip_unit_pos; - - FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS, - l_eq_chplt, l_chip_unit_pos), - "ERROR: Failed to get the chip unit pos attribute from the eq"); - - FAPI_EXEC_HWP(l_rc, p9_query_cache_access_state, l_eq_chplt, - l_l2_is_scomable, l_l2_is_scanable, - l_l3_is_scomable, l_l3_is_scanable); - FAPI_TRY(l_rc, "ERROR: failed to query cache access state for EQ %d", - l_chip_unit_pos); - - //If this cache isnt scommable continue to the next EQ - if(!l_l2_is_scomable) - { - continue; - } - - auto l_exChiplets = l_eq_chplt.getChildren<fapi2::TARGET_TYPE_EX> - (fapi2::TARGET_STATE_FUNCTIONAL); + p9pmFIR::PMFir <p9pmFIR::FIRTYPE_CME_LFIR> l_cmeFir(l_ex_chplt); - for(auto l_ex_chplt : l_exChiplets) + if (l_firinit_done_flag == 1) { - p9pmFIR::PMFir <p9pmFIR::FIRTYPE_CME_LFIR> l_cmeFir(l_ex_chplt); - - if (l_firinit_done_flag == 1) - { - FAPI_TRY(l_cmeFir.get(p9pmFIR::REG_FIRMASK), - "ERROR: Failed to get the CME FIR MASK value"); - - /* Fetch the CME FIR MASK; Save it to HWP attribute; clear it */ - FAPI_TRY(l_cmeFir.saveMask(), - "ERROR: Failed to save CME FIR Mask to the attribute"); - } + FAPI_TRY(l_cmeFir.get(p9pmFIR::REG_FIRMASK), + "ERROR: Failed to get the CME FIR MASK value"); - FAPI_TRY(l_cmeFir.setAllRegBits(p9pmFIR::REG_FIRMASK), - "ERROR: Faled to set the CME FIR MASK"); - - FAPI_TRY(l_cmeFir.put(), - "ERROR:Failed to write to the CME FIR MASK"); + /* Fetch the CME FIR MASK; Save it to HWP attribute; clear it */ + FAPI_TRY(l_cmeFir.saveMask(), + "ERROR: Failed to save CME FIR Mask to the attribute"); } + FAPI_TRY(l_cmeFir.setAllRegBits(p9pmFIR::REG_FIRMASK), + "ERROR: Faled to set the CME FIR MASK"); + + FAPI_TRY(l_cmeFir.put(), + "ERROR:Failed to write to the CME FIR MASK"); } fapi_try_exit: |