blob: a55e22db2c7854e41aea027f47386e06d1d652fe [file] [log] [blame]
edition = "2023";
package milotic_tlbmc;
import "entity_common_config.proto";
import "i2c_common_config.proto";
import "reading_range_config.proto";
import "threshold_config.proto";
enum HwmonTempSensorType {
HWMON_TEMP_SENSOR_TYPE0_UNKNOWN = 0;
HWMON_TEMP_SENSOR_TYPE1_MAX31725 = 1;
HWMON_TEMP_SENSOR_TYPE2_TMP75 = 2;
HWMON_TEMP_SENSOR_TYPE3_MAX31732 = 3;
}
// Config for an HWMon temporature device.
// A single device config might generate multiple sensors.
message HwmonTempSensorConfig {
// Specifies the type of the hardware monitor temperature sensor. This is used
// to determine the sensor's driver when creating the device.
HwmonTempSensorType type = 1;
// Specifies the i2c information of the sensor so that libraries know where
// and how to refresh the telemtry.
I2cCommonConfig i2c_common_config = 2;
// Specifies the labels of the temperature readings in sysfs (key), and names
// of the temperature readings when they are exposed (value).
map<string, string> label_to_name = 3;
// The thresholds that we want to monitor for each sensor.
map<string, ThresholdConfigs> label_to_thresholds = 4;
// Specifies the reading range of each of the sensors.
map<string, ReadingRangeConfigs> label_to_reading_ranges = 5;
EntityCommonConfig entity_common_config = 6;
}