blob: 6d4522bf36ed42704199e4efeeeb9f4eda543e7d [file] [log] [blame]
edition = "2023";
package milotic_tlbmc;
enum SensorType {
SENSOR_TYPE_UNSPECIFIED = 0;
SENSOR_TYPE_THERMAL = 1;
SENSOR_TYPE_VOLTAGE = 2;
SENSOR_TYPE_FANTACH = 3;
SENSOR_TYPE_CURRENT = 4;
SENSOR_TYPE_POWER = 5;
SENSOR_TYPE_FREQUENCY = 6;
SENSOR_TYPE_DUTYCYCLE = 7;
SENSOR_TYPE_ENERGY = 8;
SENSOR_TYPE_OEM_STATE = 9;
SENSOR_TYPE_TIME = 11;
SENSOR_TYPE_PRESENCE = 12;
SENSOR_TYPE_COUNTER = 13;
}
enum SensorUnits {
SENSOR_UNIT_UNSPECIFIED = 0;
SENSOR_UNIT_DEGREES = 1;
SENSOR_UNIT_MARGIN = 2;
SENSOR_UNIT_TCONTROL = 3;
SENSOR_UNIT_VOLTS = 4;
SENSOR_UNIT_RPM = 5;
SENSOR_UNIT_AMPS = 6;
SENSOR_UNIT_WATTS = 7;
SENSOR_UNIT_HERTZ = 8;
SENSOR_UNIT_PERCENT = 9;
SENSOR_UNIT_JOULES = 10;
SENSOR_UNIT_SECONDS = 11;
SENSOR_UNIT_PRESENCE = 12;
}
enum SensorSource {
SENSOR_SOURCE_UNKNOWN = 0;
SENSOR_SOURCE_HOST_ONLY = 1;
SENSOR_SOURCE_BMC = 2;
}
message SensorIdentifier {
string name = 1;
SensorType type = 2;
SensorUnits units = 3;
}
message SensorDescriptor {
SensorIdentifier id = 1;
string devpath = 2;
SensorSource source = 3;
}
message HighFrequencySensorReading {
double reading = 1;
int64 timestamp_ns = 2; // Nanosecond timestamp of the readings.
}
message HighFrequencySensorsReadings {
double timestamp_sec = 1; // Legacy usage
// The readings that are part of the response will have the
// same order as the SensorIdentifiers from the request.
// If a sensor read fails in the server, the reading response
// for that sensor will be empty.
repeated HighFrequencySensorReading readings = 2; // Legacy usage
repeated HighFrequencySensorReading timestamped_readings = 3;
SensorDescriptor sensor_descriptor = 4;
}
message HighFrequencySensorsReadingsBatch {
repeated HighFrequencySensorsReadings readings = 1;
}