diff options
author | Chris Cain <cjcain@us.ibm.com> | 2016-10-13 16:11:32 -0500 |
---|---|---|
committer | Christopher J. Cain <cjcain@us.ibm.com> | 2016-10-14 17:14:58 -0400 |
commit | 5cca3dd9adc644ef8cb7bb251f6b43e85ba9f780 (patch) | |
tree | 078f81c18618ea0bb01d4e91a77a2db17dbb1123 /src/occ_405/cmdh | |
parent | 609700b4ae20895c3d0713c8cfcb4717915b2bcd (diff) | |
download | talos-occ-5cca3dd9adc644ef8cb7bb251f6b43e85ba9f780.tar.gz talos-occ-5cca3dd9adc644ef8cb7bb251f6b43e85ba9f780.zip |
OCC Active state changes required for Simics
Change-Id: Ic6e65bcddaefd5213042707feffcf1272133e532
RTC: 161266
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31190
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Diffstat (limited to 'src/occ_405/cmdh')
-rwxr-xr-x | src/occ_405/cmdh/cmdh_fsp_cmds.c | 10 | ||||
-rwxr-xr-x | src/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c | 5 |
2 files changed, 10 insertions, 5 deletions
diff --git a/src/occ_405/cmdh/cmdh_fsp_cmds.c b/src/occ_405/cmdh/cmdh_fsp_cmds.c index 93bd66b..91a7a37 100755 --- a/src/occ_405/cmdh/cmdh_fsp_cmds.c +++ b/src/occ_405/cmdh/cmdh_fsp_cmds.c @@ -1083,7 +1083,11 @@ void cmdh_dbug_cmd (const cmdh_fsp_cmd_t * i_cmd_ptr, return; } - +// TODO: Workaround - SSX_SECONDS uses SsxInterval (uint32) instead of SsxTimebase (uint64) +// That would only allow times up to 7.1 seconds. OCC has a 15 second timeout for the +// SET_MODE_AND_STATE command, so updating macro to handle this longer timeout. (waiting for SSX change) +#undef SSX_SECONDS +#define SSX_SECONDS(s) ((SsxTimebase)(__ssx_timebase_frequency_hz * (SsxTimebase)(s))) // Function Specification // // Name: SMGR_base_setmodestate_cmdh @@ -1097,7 +1101,7 @@ errlHndl_t cmdh_tmgt_setmodestate(const cmdh_fsp_cmd_t * i_cmd_ptr, errlHndl_t l_errlHndl = NULL; smgr_setmodestate_v0_query_t* l_cmd_ptr = (smgr_setmodestate_v0_query_t *)i_cmd_ptr; ERRL_RC l_rc = ERRL_RC_INTERNAL_FAIL; - SsxInterval l_timeout = SSX_SECONDS(15); + SsxTimebase l_timeout = SSX_SECONDS(15); SsxTimebase l_start = ssx_timebase_get(); OCC_STATE l_pre_state = CURRENT_STATE(); OCC_MODE l_pre_mode = CURRENT_MODE(); @@ -1213,7 +1217,7 @@ errlHndl_t cmdh_tmgt_setmodestate(const cmdh_fsp_cmd_t * i_cmd_ptr, if ( ((ssx_timebase_get() - l_start) > l_timeout)) { CMDH_TRAC_ERR("cmdh_tmgt_setmodestate: time out waiting for all slave occ (expected:%d, passed:%d)", - l_occ_num, l_occ_passed_num); + l_occ_num, l_occ_passed_num); /* @ * @errortype * @moduleid CMDH_GENERIC_CMD_FAILURE diff --git a/src/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c b/src/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c index 913d45e..bc9dabe 100755 --- a/src/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c +++ b/src/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c @@ -667,9 +667,10 @@ void apss_store_ipmi_sensor_id(const uint16_t i_channel, const apss_cfg_adc_v20_ //the channel is not being utilized. if ((i_channel < MAX_APSS_ADC_CHANNELS) && (i_adc->assignment != ADC_RESERVED)) { - if (i_adc->ipmisensorId == 0) + if ((i_adc->ipmisensorId == 0) && (G_occ_interrupt_type != FSP_SUPPORTED_OCC)) { - CMDH_TRAC_ERR("apss_store_ipmi_sensor_id: Missing Sensor ID for channel %i.",i_channel); + // Sensor IDs are not required and only used for BMC based systems + CMDH_TRAC_INFO("apss_store_ipmi_sensor_id: No Sensor ID for channel %i.",i_channel); //We need to generate a generic sensor ID if we want channels with functionIDs but //no sensor IDs to be reported in the poll command. } |