diff options
author | Joe McGill <jmcgill@us.ibm.com> | 2018-02-22 16:19:59 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-02-24 21:29:50 -0500 |
commit | 90a2c95eb96ced416b6b69c119ad4e9a6f7b628a (patch) | |
tree | 41d9496473f518815b58fa302b58790093a67963 /src/import | |
parent | 5ebf782126ac759cec41766b9d8b40d18b4cdf72 (diff) | |
download | talos-hostboot-90a2c95eb96ced416b6b69c119ad4e9a6f7b628a.tar.gz talos-hostboot-90a2c95eb96ced416b6b69c119ad4e9a6f7b628a.zip |
p9_tod_move_tod_to_tb -- correct TOD state checks
Change-Id: If8ba67a25e32ae6cf418216bc266897aa0665e9f
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54609
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: Kevin F. Reick <reick@us.ibm.com>
Reviewed-by: James N. Klazynski <jklazyns@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54622
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/nest/p9_tod_move_tod_to_tb.C | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/src/import/chips/p9/procedures/hwp/nest/p9_tod_move_tod_to_tb.C b/src/import/chips/p9/procedures/hwp/nest/p9_tod_move_tod_to_tb.C index 9a185c9e5..31ce1e073 100644 --- a/src/import/chips/p9/procedures/hwp/nest/p9_tod_move_tod_to_tb.C +++ b/src/import/chips/p9/procedures/hwp/nest/p9_tod_move_tod_to_tb.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2016,2017 */ +/* Contributors Listed Below - COPYRIGHT 2016,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -347,11 +347,11 @@ fapi2::ReturnCode p9_tod_move_tod_to_tb( i_thread_num, l_tfmr_reg), "Error from p9_tod_utils_get_tfmr_reg (poll for 'not set')"); - l_tfmr_reg.extract<CAPP_TFMR_TBST_ENCODED, - CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); + l_tfmr_reg.extractToRight<CAPP_TFMR_TBST_ENCODED, + CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); - if (!l_tfmr_reg.getBit<CAPP_TFMR_LOAD_TOD_MOD>() && - (l_tfmr_state == TFMR_STATE_TB_NOT_SET)) + if ((!l_tfmr_reg.getBit<CAPP_TFMR_LOAD_TOD_MOD>()) && + ((uint32_t) l_tfmr_state == TFMR_STATE_TB_NOT_SET)) { FAPI_DBG("TFMR_LOAD_TOD_MOD cleared."); break; @@ -409,10 +409,10 @@ fapi2::ReturnCode p9_tod_move_tod_to_tb( i_thread_num, l_tfmr_reg), "Error from p9_tod_utils_get_tfmr_reg (poll for 'get_tod')"); - l_tfmr_reg.extract<CAPP_TFMR_TBST_ENCODED, - CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); + l_tfmr_reg.extractToRight<CAPP_TFMR_TBST_ENCODED, + CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); - if (l_tfmr_state == TFMR_STATE_GET_TOD) + if ((uint32_t) l_tfmr_state == TFMR_STATE_GET_TOD) { FAPI_DBG("TFMR in GET_TOD state"); break; @@ -468,14 +468,21 @@ fapi2::ReturnCode p9_tod_move_tod_to_tb( i_thread_num, l_tfmr_reg), "Error from p9_tod_utils_get_tfmr_reg (poll for 'tod_running')"); - l_tfmr_reg.extract<CAPP_TFMR_TBST_ENCODED, - CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); + l_tfmr_reg.extractToRight<CAPP_TFMR_TBST_ENCODED, + CAPP_TFMR_TBST_ENCODED_LEN>(l_tfmr_state); + + - if (l_tfmr_state == TFMR_STATE_TB_RUNNING) + if ((uint32_t) l_tfmr_state == TFMR_STATE_TB_RUNNING) { FAPI_DBG("TFMR in TB_RUNNING state"); break; } + else + { + FAPI_DBG("TFMR Reg: %016llX", l_tfmr_reg()); + FAPI_DBG("State: %X", l_tfmr_state); + } ++l_tod_init_pending_count; } |