From 60d3cb8b4d2a34357c192b0f64c2907e7b2e8e68 Mon Sep 17 00:00:00 2001 From: Joachim Fenkes Date: Mon, 15 Jul 2019 17:08:29 +0200 Subject: Streamline the way PIB/NET are initialized between SBE and Cronus Instead of p9_start_cbs swinging the PCB mux to PIB2PCB, do it in p9_sbe_tp_chiplet_init1. The PIBMEM repair code on the SBE does it this way already so no change is needed there. This way, even if we start the SBE but then run isteps in Cronus, both pieces of code will work correctly since they don't depend on previous steps leaving the mux in a specific state. Change-Id: I4a2bd53f813cbb0a00486effb156a3c2a7f4336a CQ: SW470122 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81162 Reviewed-by: Joseph J McGill Tested-by: FSP CI Jenkins Tested-by: Jenkins Server Tested-by: Hostboot CI Reviewed-by: Milton D Miller Tested-by: HWSV CI Dev-Ready: Joachim Fenkes Tested-by: PPE CI Reviewed-by: Jennifer A Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81193 Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Christian R Geddes --- .../chips/p9/procedures/hwp/perv/p9_start_cbs.C | 66 +--------------------- 1 file changed, 1 insertion(+), 65 deletions(-) (limited to 'src/import/chips') diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_start_cbs.C b/src/import/chips/p9/procedures/hwp/perv/p9_start_cbs.C index 914a78072..13990c15e 100644 --- a/src/import/chips/p9/procedures/hwp/perv/p9_start_cbs.C +++ b/src/import/chips/p9/procedures/hwp/perv/p9_start_cbs.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -71,7 +71,6 @@ fapi2::ReturnCode p9_start_cbs(const fapi2::Target fapi2::buffer l_read_attr; fapi2::buffer l_fifo_reset_skip; const fapi2::Target FAPI_SYSTEM; - fapi2::buffer l_is_axone; FAPI_INF("p9_start_cbs: Entering ..."); @@ -81,8 +80,6 @@ fapi2::ReturnCode p9_start_cbs(const fapi2::Target FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_START_CBS_FIFO_RESET_SKIP, FAPI_SYSTEM, l_fifo_reset_skip)); - FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_P9A_SBE_REGION, i_target_chip, l_is_axone)); - FAPI_DBG("Clearing Selfboot message register before every boot "); // buffer is init value is 0 FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_SB_MSG_FSI, l_data32)); @@ -203,70 +200,9 @@ fapi2::ReturnCode p9_start_cbs(const fapi2::Target .set_FSI2PIB_STATUS_READ(l_data32), "ERROR:VDD OFF, FSI2PIB BIT 16 NOT SET"); - if (l_is_axone) - { - FAPI_DBG("Switching to PIB2PCB mux sel to 1 [till pcbnet clocks are started]"); - FAPI_TRY(p9_start_cbs_switch_to_pib2pcb_path_cfam(i_target_chip)); - } - FAPI_INF("p9_start_cbs: Exiting ..."); fapi_try_exit: return fapi2::current_err; } - -/// @brief Switching to PIB2PCB Path via cfam -/// -/// @param[in] i_target_chip Reference to TARGET_TYPE_PROC_CHIP -/// @return FAPI2_RC_SUCCESS if success, else error code. -fapi2::ReturnCode p9_start_cbs_switch_to_pib2pcb_path_cfam(const - fapi2::Target& i_target_chip) -{ - fapi2::buffer l_read_reg; - FAPI_INF("p9_start_cbs_switch_to_pib2pcb_path_cfam: Entering ..."); - - FAPI_DBG("Reading ROOT_CTRL0_REG"); - FAPI_TRY(fapi2::getCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - - if (!l_read_reg.getBit()) - { - FAPI_DBG("Setting PCB RESET bit in ROOT_CTRL0_REG"); - l_read_reg.setBit(); - FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - } - - if (!l_read_reg.getBit()) - { - FAPI_DBG("Setting PIB2PCB bit in ROOT_CTRL0_REG"); - l_read_reg.setBit(); - FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - } - - if (l_read_reg.getBit()) - { - FAPI_DBG("Clearing FSI2PCB bit in ROOT_CTRL0_REG"); - l_read_reg.clearBit(); - FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - } - - if (l_read_reg.getBit()) - { - FAPI_DBG("Clearing PCB2PCB bit in ROOT_CTRL0_REG"); - l_read_reg.clearBit(); - FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - } - - if (l_read_reg.getBit()) - { - FAPI_DBG("Clearing PCB RESET bit in ROOT_CTRL0_REG"); - l_read_reg.clearBit(); - FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_ROOT_CTRL0_FSI, l_read_reg)); - } - - FAPI_INF("p9_start_cbs_switch_to_pib2pcb_path_cfam: Exiting ..."); - -fapi_try_exit: - return fapi2::current_err; - -} -- cgit v1.2.1