From b0e9e9113a95f2d0de42f33651b14302829f2a49 Mon Sep 17 00:00:00 2001 From: Yue Du Date: Thu, 27 Oct 2016 15:40:11 -0500 Subject: Stopclocks: fix state checking return code being current_err Change-Id: Iabafe83b2c726a0fc446a28dd0e971e43b753606 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31924 Dev-Ready: YUE DU Tested-by: Jenkins Server Tested-by: PPE CI Reviewed-by: Joseph J. McGill Reviewed-by: Joachim Fenkes Reviewed-by: Gregory S. Still Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31927 Reviewed-by: Hostboot Team Tested-by: FSP CI Jenkins Reviewed-by: Sachin Gupta --- .../procedures/hwp/lib/p9_common_clk_ctrl_state.H | 59 ++++++++-------------- 1 file changed, 22 insertions(+), 37 deletions(-) (limited to 'src') diff --git a/src/import/chips/p9/procedures/hwp/lib/p9_common_clk_ctrl_state.H b/src/import/chips/p9/procedures/hwp/lib/p9_common_clk_ctrl_state.H index 1943c328..b677c98c 100644 --- a/src/import/chips/p9/procedures/hwp/lib/p9_common_clk_ctrl_state.H +++ b/src/import/chips/p9/procedures/hwp/lib/p9_common_clk_ctrl_state.H @@ -50,6 +50,14 @@ const uint64_t NET_CTRL0[2] = { C_NET_CTRL0, EQ_NET_CTRL0}; const uint64_t PPM_PFSNS[2] = { C_PPM_PFSNS, EQ_PPM_PFSNS}; +#define RETURN_FALSE_IF(cause, message) \ + if (cause) \ + { \ + FAPI_INF(message); \ + l_rc = fapi2::FAPI2_RC_FALSE; \ + goto fapi_try_exit; \ + } + //----------------------------------------------------------------------------- // Template Procedure //------------------------------------------------------------------------------ @@ -60,6 +68,7 @@ p9_common_clk_ctrl_state( const fapi2::Target& i_target) { FAPI_INF(">>p9_common_clk_ctrl_state"); + fapi2::ReturnCode l_rc = fapi2::FAPI2_RC_SUCCESS; fapi2::buffer l_data64; uint32_t l_type = 0; // Assumes core @@ -71,53 +80,29 @@ p9_common_clk_ctrl_state( FAPI_DBG("Check chiplet accessibility via NET_CTRL0[0,1,16,25,26]"); FAPI_TRY(getScom(i_target, NET_CTRL0[l_type], l_data64)); - if (l_data64.getBit<25>()) - { - FAPI_INF("WARNING: Chiplet appears Offline as PCB Fence is up. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<25>() == 1), + "WARNING: Chiplet appears Offline as PCB Fence is up. Skipping"); - if (l_data64.getBit<0>() == 0) - { - FAPI_INF("WARNING: Chiplet Disabled. Assume being Partial Bad. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<0>() == 0), + "WARNING: Chiplet Disabled. Assume being Partial Bad. Skipping"); - if (l_data64.getBit<1>()) - { - FAPI_INF("WARNING: Chiplet in fixed state as PcbEpReset is on. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<1>() == 1), + "WARNING: Chiplet in fixed state as PcbEpReset is on. Skipping"); - if (l_data64.getBit<26>()) - { - FAPI_INF("WARNING: Chiplet Elec Fence is up. PCB path blocked. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<26>() == 1), + "WARNING: Chiplet Elec Fence is up. PCB path blocked. Skipping"); - if (l_data64.getBit<16>()) - { - FAPI_INF("WARNING: Chiplet VitalClk off. ClkCtrl inaccessible. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<16>() == 1), + "WARNING: Chiplet VitalClk off. ClkCtrl inaccessible. Skipping"); FAPI_DBG("Check chiplet power state via PPM_PFSNS[1]"); FAPI_TRY(getScom(i_target, PPM_PFSNS[l_type], l_data64)); - if (l_data64.getBit<1>()) - { - FAPI_INF("WARNING: Chiplet out of power while Elec Fence down. Skipping"); - fapi2::current_err = fapi2::FAPI2_RC_FALSE; - goto fapi_try_exit; - } + RETURN_FALSE_IF((l_data64.getBit<1>() == 1), + "WARNING: Chiplet out of power while Elec Fence down. Skipping"); fapi_try_exit: FAPI_INF("<