diff options
author | crgeddes <crgeddes@us.ibm.com> | 2017-05-16 10:27:30 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-05-22 23:48:55 -0400 |
commit | b02a02d241b5f8e8e85f40cc1527a79c3b2484da (patch) | |
tree | 00d87566e49fb75dd53f335326f74c471c620d10 /src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C | |
parent | e524b9a8b216ba744374c8f05c7e45ccb55c6b6e (diff) | |
download | talos-hostboot-b02a02d241b5f8e8e85f40cc1527a79c3b2484da.tar.gz talos-hostboot-b02a02d241b5f8e8e85f40cc1527a79c3b2484da.zip |
Skip EQ_CLOCK_STAT_SL scom is we are in stop 11 or greater
we shoulndt attempt to scom the EQ if the power is off
Change-Id: I662a2bada8ed2991e7861aa5f4882f327630624c
CQ: SW388687
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40563
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40568
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C b/src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C index 072e35e5c..31912dbaf 100644 --- a/src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C +++ b/src/import/chips/p9/procedures/hwp/pm/p9_query_cache_access_state.C @@ -140,31 +140,33 @@ p9_query_cache_access_state( o_l2_is_scannable = 0; o_l3_is_scannable = 0; } + else + { + //Read clock status to confirm stop state history is accurate + //If we trust the stop state history, this could be removed to save on code size + //Compare Hardware status vs stop state status. If there is a mismatch the HW value overrides the stop state - //Read clock status to confirm stop state history is accurate - //If we trust the stop state history, this could be removed to save on code size - //Compare Hardware status vs stop state status. If there is a mismatch the HW value overrides the stop state - - FAPI_TRY(fapi2::getScom(i_target, EQ_CLOCK_STAT_SL, l_data64), "Error reading data from EQ_CLOCK_STAT_SL"); + FAPI_TRY(fapi2::getScom(i_target, EQ_CLOCK_STAT_SL, l_data64), "Error reading data from EQ_CLOCK_STAT_SL"); - FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS, i_target, l_chpltNumber), - "Error: Failed to get the position of the EX:0x%08X", i_target); - l_exPos = l_chpltNumber % 2; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS, i_target, l_chpltNumber), + "Error: Failed to get the position of the EX:0x%08X", i_target); + l_exPos = l_chpltNumber % 2; - l_is_scomable = !l_data64.getBit(eq_clk_l2_pos[l_exPos]); + l_is_scomable = !l_data64.getBit(eq_clk_l2_pos[l_exPos]); - if (o_l2_is_scomable != l_is_scomable) - { - FAPI_INF("Clock status didn't match stop state, overriding is_scomable status"); - o_l2_is_scomable = l_is_scomable; - } + if (o_l2_is_scomable != l_is_scomable) + { + FAPI_INF("Clock status didn't match stop state, overriding is_scomable status"); + o_l2_is_scomable = l_is_scomable; + } - l_is_scomable = !l_data64.getBit(eq_clk_l3_pos[l_exPos]); + l_is_scomable = !l_data64.getBit(eq_clk_l3_pos[l_exPos]); - if (o_l3_is_scomable != l_is_scomable) - { - FAPI_INF("Clock status didn't match stop state, overriding is_scomable status"); - o_l3_is_scomable = l_is_scomable; + if (o_l3_is_scomable != l_is_scomable) + { + FAPI_INF("Clock status didn't match stop state, overriding is_scomable status"); + o_l3_is_scomable = l_is_scomable; + } } fapi_try_exit: |