summaryrefslogtreecommitdiffstats
path: root/src/usr/hdat
diff options
context:
space:
mode:
authornagurram-in <nagendra.g@in.ibm.com>2017-06-13 04:17:53 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-06-28 23:43:51 -0400
commit5017bcab5ac55f1d03c19d26c742f7d11d2c3ebe (patch)
treeb77f658884fccefd2631ef9e1828529fef17adb8 /src/usr/hdat
parent8a37f9c0378f5a3e91f7c23dcdde2bdc68530403 (diff)
downloadtalos-hostboot-5017bcab5ac55f1d03c19d26c742f7d11d2c3ebe.tar.gz
talos-hostboot-5017bcab5ac55f1d03c19d26c742f7d11d2c3ebe.zip
IPMI HDAT reenablement change and soft sensor additions
Change-Id: I4932fffcdc705db6789f53c08f5f513a223a2489 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41737 Reviewed-by: VENKATESH SAINATH <venkatesh.sainath@in.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> 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/usr/hdat')
-rw-r--r--src/usr/hdat/hdatipmi.C32
-rw-r--r--src/usr/hdat/hdatipmi.H4
2 files changed, 15 insertions, 21 deletions
diff --git a/src/usr/hdat/hdatipmi.C b/src/usr/hdat/hdatipmi.C
index 56bfab7bc..9ee508880 100644
--- a/src/usr/hdat/hdatipmi.C
+++ b/src/usr/hdat/hdatipmi.C
@@ -42,10 +42,6 @@ extern trace_desc_t *g_trac_hdat;
uint32_t HdatIpmi::cv_actualCnt = 0;
-
-
-
-
/*******************************************************************************
* IPMI Constructor
* IPMI sensor data structure is pretty simple with only 2 internal data pointers.
@@ -91,30 +87,26 @@ HdatIpmi::HdatIpmi(errlHndl_t &o_errlHndl, const hdatMsAddr_t &i_msAddr):
l_targetService.begin(),
l_targetService.end(),
&l_presentTargExpr);
-
+
+ TARGETING::ATTR_IPMI_SENSORS_type sensors = {{0}};
for(; l_targFilter; ++l_targFilter)
{
-#if 0
// Create a new array entry and push it to FRU/LED sensor vector
hdatIPMIFRUSensorMapEntry_t l_fruEntry;
- uint8_t l_sensorType = 0;
- uint8_t l_eventReadingType = 0;
l_fruEntry.SLCAIndex = (*l_targFilter)->getAttr<ATTR_SLCA_INDEX>();
- l_fruEntry.IPMISensorID = getFaultSensorNumber(*l_targFilter);
- l_errl = SensorBase::getSensorType(l_fruEntry.IPMISensorID,
- l_sensorType, l_eventReadingType);
- if(l_errl == NULL)
+ assert((*l_targFilter)->tryGetAttr<TARGETING::ATTR_IPMI_SENSORS>(sensors));
+ for(auto & l_sensor : sensors)
{
- l_fruEntry.IPMISensorType = l_sensorType;
+ l_fruEntry.IPMISensorID = l_sensor[1];
+ l_fruEntry.IPMISensorType = (uint8_t)(l_sensor[0] >> 8);
+ // OPAL doesn't like sensor types of 0xFF, so filter them out.
+ if( l_fruEntry.IPMISensorType != 0xFF )
+ {
+ iv_ipmiFruEntry.push_back(l_fruEntry);
+ }
}
- else
- {
- HDAT_ERR(" Error in getsensor type");
- break;
- }
- iv_ipmiFruEntry.push_back(l_fruEntry);
-#endif
}
+
iv_ipmiDataSize = sizeof(hdatHDIF_t)+
HDAT_IPMI_PADDING +
( sizeof(hdatHDIFDataHdr_t) * HDAT_IPMI_NUM_DATA_PTRS)+
diff --git a/src/usr/hdat/hdatipmi.H b/src/usr/hdat/hdatipmi.H
index 737ce4097..f16476149 100644
--- a/src/usr/hdat/hdatipmi.H
+++ b/src/usr/hdat/hdatipmi.H
@@ -62,7 +62,9 @@ enum hdatIPMIDataPtrs
{
HDAT_IPMI_FRU_SENSOR_MAPPING = 0,
HDAT_IPMI_LED_SENSOR_ID_MAPPING = 1,
- HDAT_IPMI_DA_LAST = 2,
+ HDAT_IPMI_RESERVED1 = 2,
+ HDAT_IPMI_RESERVED2 = 3,
+ HDAT_IPMI_DA_LAST = 4,
};
struct hdatIPMIFRUSensorMapEntry_t
OpenPOWER on IntegriCloud