diff options
author | Joe McGill <jmcgill@us.ibm.com> | 2016-05-13 10:15:35 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-05-19 16:30:02 -0400 |
commit | 54d8abcaf4ba0872692421e6891bade6ec99d758 (patch) | |
tree | 7717e55cc67d75334aa2a8f1a0c55acf7b1bb0aa /src/import/chips/p9/procedures/hwp/perv | |
parent | 9ae13961cdc42e59c6f8ed95bb73380890af2ee8 (diff) | |
download | talos-hostboot-54d8abcaf4ba0872692421e6891bade6ec99d758.tar.gz talos-hostboot-54d8abcaf4ba0872692421e6891bade6ec99d758.zip |
p9_mem_startclocks -- skip clock start in sync_mode
With ATTR_MC_SYNC_MODE=1, MEM clocks are started in proc_sbe_nest_startclocks
Change-Id: I003ed7a099035ba994c3a6c889c358bea7772ed5
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24511
Tested-by: Jenkins Server
Tested-by: Hostboot CI
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24512
Tested-by: FSP CI Jenkins
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/perv')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/perv/p9_mem_startclocks.C | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_mem_startclocks.C b/src/import/chips/p9/procedures/hwp/perv/p9_mem_startclocks.C index ae373c84b..dc94284f9 100644 --- a/src/import/chips/p9/procedures/hwp/perv/p9_mem_startclocks.C +++ b/src/import/chips/p9/procedures/hwp/perv/p9_mem_startclocks.C @@ -63,31 +63,37 @@ static fapi2::ReturnCode p9_mem_startclocks_flushmode( fapi2::ReturnCode p9_mem_startclocks(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target_chip) { + uint8_t l_sync_mode = 0; + FAPI_DBG("Entering ..."); - FAPI_INF("Switch MC meshs to Nest mesh"); + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_MC_SYNC_MODE, i_target_chip, l_sync_mode), + "Error from FAPI_ATTR_GET (ATTR_MC_SYNC_MODE)"); - for (auto l_trgt_chplt : i_target_chip.getChildren<fapi2::TARGET_TYPE_PERV> - (fapi2::TARGET_FILTER_ALL_MC, fapi2::TARGET_STATE_FUNCTIONAL)) + if (!l_sync_mode) { + for (auto l_trgt_chplt : i_target_chip.getChildren<fapi2::TARGET_TYPE_PERV> + (fapi2::TARGET_FILTER_ALL_MC, fapi2::TARGET_STATE_FUNCTIONAL)) + { - FAPI_INF("Call p9_mem_startclocks_cplt_ctrl_action_function for Mc chiplets"); - FAPI_TRY(p9_mem_startclocks_cplt_ctrl_action_function(l_trgt_chplt)); + FAPI_INF("Call p9_mem_startclocks_cplt_ctrl_action_function for Mc chiplets"); + FAPI_TRY(p9_mem_startclocks_cplt_ctrl_action_function(l_trgt_chplt)); - FAPI_INF("Call module align chiplets for Mc chiplets"); - FAPI_TRY(p9_sbe_common_align_chiplets(l_trgt_chplt)); + FAPI_INF("Call module align chiplets for Mc chiplets"); + FAPI_TRY(p9_sbe_common_align_chiplets(l_trgt_chplt)); - FAPI_INF("Call module clock start stop for MC01, MC23."); - FAPI_TRY(p9_sbe_common_clock_start_stop(l_trgt_chplt, CLOCK_CMD, - DONT_STARTSLAVE, DONT_STARTMASTER, REGIONS_ALL_EXCEPT_VITAL_NESTPLL, - CLOCK_TYPES)); + FAPI_INF("Call module clock start stop for MC01, MC23."); + FAPI_TRY(p9_sbe_common_clock_start_stop(l_trgt_chplt, CLOCK_CMD, + DONT_STARTSLAVE, DONT_STARTMASTER, REGIONS_ALL_EXCEPT_VITAL_NESTPLL, + CLOCK_TYPES)); - FAPI_INF("Call p9_mem_startclocks_check_checkstop_function for Mc chiplets "); - FAPI_TRY(p9_mem_startclocks_check_checkstop_function(l_trgt_chplt)); + FAPI_INF("Call p9_mem_startclocks_check_checkstop_function for Mc chiplets "); + FAPI_TRY(p9_mem_startclocks_check_checkstop_function(l_trgt_chplt)); - FAPI_INF("Call p9_mem_startclocks_flushmode for Mc chiplets"); - FAPI_TRY(p9_mem_startclocks_flushmode(l_trgt_chplt)); + FAPI_INF("Call p9_mem_startclocks_flushmode for Mc chiplets"); + FAPI_TRY(p9_mem_startclocks_flushmode(l_trgt_chplt)); + } } FAPI_DBG("Exiting ..."); |