summaryrefslogtreecommitdiffstats
path: root/src/occ_405/cmdh
diff options
context:
space:
mode:
authorChris Cain <cjcain@us.ibm.com>2016-10-13 16:11:32 -0500
committerChristopher J. Cain <cjcain@us.ibm.com>2016-10-14 17:14:58 -0400
commit5cca3dd9adc644ef8cb7bb251f6b43e85ba9f780 (patch)
tree078f81c18618ea0bb01d4e91a77a2db17dbb1123 /src/occ_405/cmdh
parent609700b4ae20895c3d0713c8cfcb4717915b2bcd (diff)
downloadtalos-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-xsrc/occ_405/cmdh/cmdh_fsp_cmds.c10
-rwxr-xr-xsrc/occ_405/cmdh/cmdh_fsp_cmds_datacnfg.c5
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.
}
OpenPOWER on IntegriCloud