blob: 89f1cc4fec09a3054ec6796f4e4f1e74205f3d00 [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 PsuSensorType {
PSU_SENSOR_TYPE0_UNKNOWN = 0;
PSU_SENSOR_TYPE1_ADM1266 = 1;
PSU_SENSOR_TYPE2_ADM1272 = 2;
PSU_SENSOR_TYPE3_PMBUS = 3;
PSU_SENSOR_TYPE4_LTC2991 = 4;
PSU_SENSOR_TYPE5_RAA228228 = 5;
PSU_SENSOR_TYPE6_TDA38725 = 6;
PSU_SENSOR_TYPE7_TDA38740 = 7;
PSU_SENSOR_TYPE8_XDPE1A2G5B = 8;
PSU_SENSOR_TYPE9_LTC4287 = 9;
PSU_SENSOR_TYPE10_Q50SN12072 = 10;
PSU_SENSOR_TYPE11_Q54SN120A4 = 11;
PSU_SENSOR_TYPE12_TPS25990 = 12;
}
// Config for a PSU sensor device.
// A single device config might generate multiple sensors.
message PsuSensorConfig {
PsuSensorType type = 1;
I2cCommonConfig i2c_common_config = 2;
// Specifies the labels of the sensor readings in sysfs (key), and names
// of the sensor 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;
string name = 7;
}