summaryrefslogtreecommitdiffstats
path: root/sensorhandler.h
diff options
context:
space:
mode:
Diffstat (limited to 'sensorhandler.h')
-rw-r--r--sensorhandler.h169
1 files changed, 82 insertions, 87 deletions
diff --git a/sensorhandler.h b/sensorhandler.h
index d6426f6..3f2fd99 100644
--- a/sensorhandler.h
+++ b/sensorhandler.h
@@ -1,19 +1,21 @@
#ifndef __HOST_IPMI_SEN_HANDLER_H__
#define __HOST_IPMI_SEN_HANDLER_H__
-#include <stdint.h>
#include "types.hpp"
+
+#include <stdint.h>
+
#include "host-ipmid/ipmid-api.h"
// IPMI commands for net functions.
enum ipmi_netfn_sen_cmds
{
IPMI_CMD_GET_DEVICE_SDR_INFO = 0x20,
- IPMI_CMD_GET_DEVICE_SDR = 0x21,
- IPMI_CMD_RESERVE_DEVICE_SDR_REPO = 0x22,
+ IPMI_CMD_GET_DEVICE_SDR = 0x21,
+ IPMI_CMD_RESERVE_DEVICE_SDR_REPO = 0x22,
IPMI_CMD_GET_SENSOR_READING = 0x2D,
- IPMI_CMD_GET_SENSOR_TYPE = 0x2F,
- IPMI_CMD_SET_SENSOR = 0x30,
+ IPMI_CMD_GET_SENSOR_TYPE = 0x2F,
+ IPMI_CMD_SET_SENSOR = 0x30,
IPMI_CMD_GET_SENSOR_THRESHOLDS = 0x27,
};
@@ -30,26 +32,27 @@ enum device_type
// Discrete sensor types.
enum ipmi_sensor_types
{
- IPMI_SENSOR_TEMP = 0x01,
+ IPMI_SENSOR_TEMP = 0x01,
IPMI_SENSOR_VOLTAGE = 0x02,
IPMI_SENSOR_CURRENT = 0x03,
- IPMI_SENSOR_FAN = 0x04,
- IPMI_SENSOR_TPM = 0xCC,
+ IPMI_SENSOR_FAN = 0x04,
+ IPMI_SENSOR_TPM = 0xCC,
};
#define MAX_DBUS_PATH 128
-struct dbus_interface_t {
- uint8_t sensornumber;
- uint8_t sensortype;
+struct dbus_interface_t
+{
+ uint8_t sensornumber;
+ uint8_t sensortype;
- char bus[MAX_DBUS_PATH];
- char path[MAX_DBUS_PATH];
- char interface[MAX_DBUS_PATH];
+ char bus[MAX_DBUS_PATH];
+ char path[MAX_DBUS_PATH];
+ char interface[MAX_DBUS_PATH];
};
-int set_sensor_dbus_state_s(uint8_t , const char *, const char *);
-int set_sensor_dbus_state_y(uint8_t , const char *, const uint8_t);
-int find_openbmc_path(uint8_t , dbus_interface_t *);
+int set_sensor_dbus_state_s(uint8_t, const char*, const char*);
+int set_sensor_dbus_state_y(uint8_t, const char*, const uint8_t);
+int find_openbmc_path(uint8_t, dbus_interface_t*);
ipmi_ret_t ipmi_sen_get_sdr(ipmi_netfn_t netfn, ipmi_cmd_t cmd,
ipmi_request_t request, ipmi_response_t response,
@@ -78,7 +81,7 @@ namespace request
// raw value for this call.
inline bool get_count(void* req)
{
- return (bool)((uint64_t)(req) & 1);
+ return (bool)((uint64_t)(req)&1);
}
} // namespace request
@@ -229,19 +232,19 @@ inline void set_owner_id_bmc(SensorDataRecordKey* key)
inline void set_owner_id_address(uint8_t addr, SensorDataRecordKey* key)
{
key->owner_id &= 0x01;
- key->owner_id |= addr<<1;
+ key->owner_id |= addr << 1;
};
inline void set_owner_lun(uint8_t lun, SensorDataRecordKey* key)
{
key->owner_lun &= ~0x03;
- key->owner_lun |= (lun&0x03);
+ key->owner_lun |= (lun & 0x03);
};
inline void set_owner_lun_channel(uint8_t channel, SensorDataRecordKey* key)
{
key->owner_lun &= 0x0f;
- key->owner_lun |= ((channel & 0xf)<<4);
+ key->owner_lun |= ((channel & 0xf) << 4);
};
} // namespace key
@@ -252,13 +255,13 @@ inline void set_owner_lun_channel(uint8_t channel, SensorDataRecordKey* key)
*/
struct GetSensorThresholdsResponse
{
- uint8_t validMask; //!< valid mask
- uint8_t lowerNonCritical; //!< lower non-critical threshold
- uint8_t lowerCritical; //!< lower critical threshold
- uint8_t lowerNonRecoverable;//!< lower non-recoverable threshold
- uint8_t upperNonCritical; //!< upper non-critical threshold
- uint8_t upperCritical; //!< upper critical threshold
- uint8_t upperNonRecoverable;//!< upper non-recoverable threshold
+ uint8_t validMask; //!< valid mask
+ uint8_t lowerNonCritical; //!< lower non-critical threshold
+ uint8_t lowerCritical; //!< lower critical threshold
+ uint8_t lowerNonRecoverable; //!< lower non-recoverable threshold
+ uint8_t upperNonCritical; //!< upper non-critical threshold
+ uint8_t upperCritical; //!< upper critical threshold
+ uint8_t upperNonRecoverable; //!< upper non-recoverable threshold
} __attribute__((packed));
// Body - full record
@@ -274,8 +277,8 @@ struct SensorDataFullRecordBody
uint8_t sensor_capabilities; // no macro support
uint8_t sensor_type;
uint8_t event_reading_type;
- uint8_t supported_assertions[2]; // no macro support
- uint8_t supported_deassertions[2]; // no macro support
+ uint8_t supported_assertions[2]; // no macro support
+ uint8_t supported_deassertions[2]; // no macro support
uint8_t discrete_reading_setting_mask[2]; // no macro support
uint8_t sensor_units_1;
uint8_t sensor_units_2_base;
@@ -287,7 +290,7 @@ struct SensorDataFullRecordBody
uint8_t b_msb_and_accuracy_lsb;
uint8_t accuracy_and_sensor_direction;
uint8_t r_b_exponents;
- uint8_t analog_characteristic_flags; //no macro support
+ uint8_t analog_characteristic_flags; // no macro support
uint8_t nominal_reading;
uint8_t normal_max;
uint8_t normal_min;
@@ -329,145 +332,137 @@ namespace body
inline void set_entity_instance_number(uint8_t n,
SensorDataFullRecordBody* body)
{
- body->entity_instance &= 1<<7;
- body->entity_instance |= (n & ~(1<<7));
+ body->entity_instance &= 1 << 7;
+ body->entity_instance |= (n & ~(1 << 7));
};
inline void set_entity_physical_entity(SensorDataFullRecordBody* body)
{
- body->entity_instance &= ~(1<<7);
+ body->entity_instance &= ~(1 << 7);
};
inline void set_entity_logical_container(SensorDataFullRecordBody* body)
{
- body->entity_instance |= 1<<7;
+ body->entity_instance |= 1 << 7;
};
-inline void sensor_scanning_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void sensor_scanning_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<0;
+ body->sensor_initialization |= 1 << 0;
}
else
{
- body->sensor_initialization &= ~(1<<0);
+ body->sensor_initialization &= ~(1 << 0);
};
};
-inline void event_generation_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void event_generation_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<1;
+ body->sensor_initialization |= 1 << 1;
}
else
{
- body->sensor_initialization &= ~(1<<1);
+ body->sensor_initialization &= ~(1 << 1);
}
};
-inline void init_types_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_types_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<2;
+ body->sensor_initialization |= 1 << 2;
}
else
{
- body->sensor_initialization &= ~(1<<2);
+ body->sensor_initialization &= ~(1 << 2);
}
};
-inline void init_hyst_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_hyst_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<3;
+ body->sensor_initialization |= 1 << 3;
}
else
{
- body->sensor_initialization &= ~(1<<3);
+ body->sensor_initialization &= ~(1 << 3);
}
};
-inline void init_thresh_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_thresh_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<4;
+ body->sensor_initialization |= 1 << 4;
}
else
{
- body->sensor_initialization &= ~(1<<4);
+ body->sensor_initialization &= ~(1 << 4);
}
};
-inline void init_events_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_events_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<5;
+ body->sensor_initialization |= 1 << 5;
}
else
{
- body->sensor_initialization &= ~(1<<5);
+ body->sensor_initialization &= ~(1 << 5);
}
};
-inline void init_scanning_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_scanning_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<6;
+ body->sensor_initialization |= 1 << 6;
}
else
{
- body->sensor_initialization &= ~(1<<6);
+ body->sensor_initialization &= ~(1 << 6);
}
};
-inline void init_settable_state(bool enabled,
- SensorDataFullRecordBody* body)
+inline void init_settable_state(bool enabled, SensorDataFullRecordBody* body)
{
if (enabled)
{
- body->sensor_initialization |= 1<<7;
+ body->sensor_initialization |= 1 << 7;
}
else
{
- body->sensor_initialization &= ~(1<<7);
+ body->sensor_initialization &= ~(1 << 7);
}
};
inline void set_percentage(SensorDataFullRecordBody* body)
{
- body->sensor_units_1 |= 1<<0;
+ body->sensor_units_1 |= 1 << 0;
};
inline void unset_percentage(SensorDataFullRecordBody* body)
{
- body->sensor_units_1 &= ~(1<<0);
+ body->sensor_units_1 &= ~(1 << 0);
};
inline void set_modifier_operation(uint8_t op, SensorDataFullRecordBody* body)
{
- body->sensor_units_1 &= ~(3<<1);
- body->sensor_units_1 |= (op & 0x3)<<1;
+ body->sensor_units_1 &= ~(3 << 1);
+ body->sensor_units_1 |= (op & 0x3) << 1;
};
inline void set_rate_unit(uint8_t unit, SensorDataFullRecordBody* body)
{
- body->sensor_units_1 &= ~(7<<3);
- body->sensor_units_1 |= (unit & 0x7)<<3;
+ body->sensor_units_1 &= ~(7 << 3);
+ body->sensor_units_1 |= (unit & 0x7) << 3;
};
inline void set_analog_data_format(uint8_t format,
SensorDataFullRecordBody* body)
{
- body->sensor_units_1 &= ~(3<<6);
- body->sensor_units_1 |= (format & 0x3)<<6;
+ body->sensor_units_1 &= ~(3 << 6);
+ body->sensor_units_1 |= (format & 0x3) << 6;
};
inline void set_m(uint16_t m, SensorDataFullRecordBody* body)
{
body->m_lsb = m & 0xff;
- body->m_msb_and_tolerance &= ~(3<<6);
- body->m_msb_and_tolerance |= ((m & (3<<8)) >> 2);
+ body->m_msb_and_tolerance &= ~(3 << 6);
+ body->m_msb_and_tolerance |= ((m & (3 << 8)) >> 2);
};
inline void set_tolerance(uint8_t tol, SensorDataFullRecordBody* body)
{
@@ -478,8 +473,8 @@ inline void set_tolerance(uint8_t tol, SensorDataFullRecordBody* body)
inline void set_b(uint16_t b, SensorDataFullRecordBody* body)
{
body->b_lsb = b & 0xff;
- body->b_msb_and_accuracy_lsb &= ~(3<<6);
- body->b_msb_and_accuracy_lsb |= ((b & (3<<8)) >> 2);
+ body->b_msb_and_accuracy_lsb &= ~(3 << 6);
+ body->b_msb_and_accuracy_lsb |= ((b & (3 << 8)) >> 2);
};
inline void set_accuracy(uint16_t acc, SensorDataFullRecordBody* body)
{
@@ -492,12 +487,12 @@ inline void set_accuracy(uint16_t acc, SensorDataFullRecordBody* body)
};
inline void set_accuracy_exp(uint8_t exp, SensorDataFullRecordBody* body)
{
- body->accuracy_and_sensor_direction &= ~(3<<2);
- body->accuracy_and_sensor_direction |= (exp & 3)<<2;
+ body->accuracy_and_sensor_direction &= ~(3 << 2);
+ body->accuracy_and_sensor_direction |= (exp & 3) << 2;
};
inline void set_sensor_dir(uint8_t dir, SensorDataFullRecordBody* body)
{
- body->accuracy_and_sensor_direction &= ~(3<<0);
+ body->accuracy_and_sensor_direction &= ~(3 << 0);
body->accuracy_and_sensor_direction |= (dir & 3);
};
@@ -509,7 +504,7 @@ inline void set_b_exp(uint8_t exp, SensorDataFullRecordBody* body)
inline void set_r_exp(uint8_t exp, SensorDataFullRecordBody* body)
{
body->r_b_exponents &= 0x0f;
- body->r_b_exponents |= (exp & 0x0f)<<4;
+ body->r_b_exponents |= (exp & 0x0f) << 4;
};
inline void set_id_strlen(uint8_t len, SensorDataFullRecordBody* body)
@@ -517,14 +512,14 @@ inline void set_id_strlen(uint8_t len, SensorDataFullRecordBody* body)
body->id_string_info &= ~(0x1f);
body->id_string_info |= len & 0x1f;
};
-inline uint8_t get_id_strlen( SensorDataFullRecordBody* body)
+inline uint8_t get_id_strlen(SensorDataFullRecordBody* body)
{
return body->id_string_info & 0x1f;
};
inline void set_id_type(uint8_t type, SensorDataFullRecordBody* body)
{
- body->id_string_info &= ~(3<<6);
- body->id_string_info |= (type & 0x3)<<6;
+ body->id_string_info &= ~(3 << 6);
+ body->id_string_info |= (type & 0x3) << 6;
};
inline void set_device_id_strlen(uint8_t len, SensorDataFruRecordBody* body)
@@ -577,7 +572,7 @@ struct SensorDataFruRecord
SensorDataFruRecordBody body;
} __attribute__((packed));
-} // get_sdr
+} // namespace get_sdr
namespace ipmi
{
OpenPOWER on IntegriCloud