summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/perv
diff options
context:
space:
mode:
authorJoe McGill <jmcgill@us.ibm.com>2016-05-13 10:15:35 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-05-19 16:30:02 -0400
commit54d8abcaf4ba0872692421e6891bade6ec99d758 (patch)
tree7717e55cc67d75334aa2a8f1a0c55acf7b1bb0aa /src/import/chips/p9/procedures/hwp/perv
parent9ae13961cdc42e59c6f8ed95bb73380890af2ee8 (diff)
downloadtalos-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.C36
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 ...");
OpenPOWER on IntegriCloud