diff --git a/lib/chips.c b/lib/chips.c index 728521c2..9a11f127 100644 --- a/lib/chips.c +++ b/lib/chips.c @@ -2128,6 +2128,114 @@ static sensors_chip_feature ds1621_features[] = { 0 } }; +static sensors_chip_feature it87_features[] = + { + { SENSORS_IT87_IN0, "in0", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN0, VALUE(3), 2 }, + { SENSORS_IT87_IN1, "in1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN1, VALUE(3), 2 }, + { SENSORS_IT87_IN2, "in2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN2, VALUE(3), 2 }, + { SENSORS_IT87_IN3, "in3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN3, VALUE(3), 2 }, + { SENSORS_IT87_IN4, "in4", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN4, VALUE(3), 2 }, + { SENSORS_IT87_IN5, "in5", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN5, VALUE(3), 2 }, + { SENSORS_IT87_IN6, "in6", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN6, VALUE(3), 2 }, + { SENSORS_IT87_IN7, "in7", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_IN7, VALUE(3), 2 }, + { SENSORS_IT87_IN0_MIN, "in0_min", SENSORS_IT87_IN0, SENSORS_IT87_IN0, + SENSORS_MODE_RW, IT87_SYSCTL_IN0, VALUE(1), 2 }, + { SENSORS_IT87_IN1_MIN, "in1_min", SENSORS_IT87_IN1, SENSORS_IT87_IN1, + SENSORS_MODE_RW, IT87_SYSCTL_IN1, VALUE(1), 2 }, + { SENSORS_IT87_IN2_MIN, "in2_min", SENSORS_IT87_IN2, SENSORS_IT87_IN2, + SENSORS_MODE_RW, IT87_SYSCTL_IN2, VALUE(1), 2 }, + { SENSORS_IT87_IN3_MIN, "in3_min", SENSORS_IT87_IN3, SENSORS_IT87_IN3, + SENSORS_MODE_RW, IT87_SYSCTL_IN3, VALUE(1), 2 }, + { SENSORS_IT87_IN4_MIN, "in4_min", SENSORS_IT87_IN4, SENSORS_IT87_IN4, + SENSORS_MODE_RW, IT87_SYSCTL_IN4, VALUE(1), 2 }, + { SENSORS_IT87_IN5_MIN, "in5_min", SENSORS_IT87_IN5, SENSORS_IT87_IN5, + SENSORS_MODE_RW, IT87_SYSCTL_IN5, VALUE(1), 2 }, + { SENSORS_IT87_IN6_MIN, "in6_min", SENSORS_IT87_IN6, SENSORS_IT87_IN6, + SENSORS_MODE_RW, IT87_SYSCTL_IN6, VALUE(1), 2 }, + { SENSORS_IT87_IN7_MIN, "in7_min", SENSORS_IT87_IN7, SENSORS_IT87_IN7, + SENSORS_MODE_RW, IT87_SYSCTL_IN7, VALUE(1), 2 }, + { SENSORS_IT87_IN0_MAX, "in0_max", SENSORS_IT87_IN0, SENSORS_IT87_IN0, + SENSORS_MODE_RW, IT87_SYSCTL_IN0, VALUE(2), 2 }, + { SENSORS_IT87_IN1_MAX, "in1_max", SENSORS_IT87_IN1, SENSORS_IT87_IN1, + SENSORS_MODE_RW, IT87_SYSCTL_IN1, VALUE(2), 2 }, + { SENSORS_IT87_IN2_MAX, "in2_max", SENSORS_IT87_IN2, SENSORS_IT87_IN2, + SENSORS_MODE_RW, IT87_SYSCTL_IN2, VALUE(2), 2 }, + { SENSORS_IT87_IN3_MAX, "in3_max", SENSORS_IT87_IN3, SENSORS_IT87_IN3, + SENSORS_MODE_RW, IT87_SYSCTL_IN3, VALUE(2), 2 }, + { SENSORS_IT87_IN4_MAX, "in4_max", SENSORS_IT87_IN4, SENSORS_IT87_IN4, + SENSORS_MODE_RW, IT87_SYSCTL_IN4, VALUE(2), 2 }, + { SENSORS_IT87_IN5_MAX, "in5_max", SENSORS_IT87_IN5, SENSORS_IT87_IN5, + SENSORS_MODE_RW, IT87_SYSCTL_IN5, VALUE(2), 2 }, + { SENSORS_IT87_IN6_MAX, "in6_max", SENSORS_IT87_IN6, SENSORS_IT87_IN6, + SENSORS_MODE_RW, IT87_SYSCTL_IN6, VALUE(2), 2 }, + { SENSORS_IT87_IN7_MAX, "in7_max", SENSORS_IT87_IN7, SENSORS_IT87_IN7, + SENSORS_MODE_RW, IT87_SYSCTL_IN7, VALUE(2), 2 }, + { SENSORS_IT87_FAN1, "fan1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_FAN1, VALUE(2), 0 }, + { SENSORS_IT87_FAN2, "fan2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_FAN2, VALUE(2), 0 }, + { SENSORS_IT87_FAN3, "fan3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_FAN3, VALUE(2), 0 }, + { SENSORS_IT87_FAN1_MIN, "fan1_min", SENSORS_IT87_FAN1, SENSORS_IT87_FAN1, + SENSORS_MODE_RW, IT87_SYSCTL_FAN1, VALUE(1), 0 }, + { SENSORS_IT87_FAN2_MIN, "fan2_min", SENSORS_IT87_FAN2, SENSORS_IT87_FAN2, + SENSORS_MODE_RW, IT87_SYSCTL_FAN2, VALUE(1), 0 }, + { SENSORS_IT87_FAN3_MIN, "fan3_min", SENSORS_IT87_FAN3, SENSORS_IT87_FAN3, + SENSORS_MODE_RW, IT87_SYSCTL_FAN3, VALUE(1), 0 }, + { SENSORS_IT87_TEMP1, "temp1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_TEMP1, VALUE(3), 1 }, + { SENSORS_IT87_TEMP2, "temp2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_TEMP2, VALUE(3), 1 }, + { SENSORS_IT87_TEMP3, "temp3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_TEMP3, VALUE(3), 1 }, + { SENSORS_IT87_TEMP1_LOW, "temp1_hyst", SENSORS_IT87_TEMP1, + SENSORS_IT87_TEMP1, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP1, VALUE(2), 1 }, + { SENSORS_IT87_TEMP2_LOW, "temp2_hyst", SENSORS_IT87_TEMP2, + SENSORS_IT87_TEMP2, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP2, VALUE(2), 1 }, + { SENSORS_IT87_TEMP3_LOW, "temp3_hyst", SENSORS_IT87_TEMP3, + SENSORS_IT87_TEMP3, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP3, VALUE(2), 1 }, + { SENSORS_IT87_TEMP1_HIGH, "temp1_over", SENSORS_IT87_TEMP1, + SENSORS_IT87_TEMP1, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP1, VALUE(1), 1 }, + { SENSORS_IT87_TEMP2_HIGH, "temp2_over", SENSORS_IT87_TEMP2, + SENSORS_IT87_TEMP2, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP2, VALUE(1), 1 }, + { SENSORS_IT87_TEMP3_HIGH, "temp3_over", SENSORS_IT87_TEMP3, + SENSORS_IT87_TEMP3, SENSORS_MODE_RW, + IT87_SYSCTL_TEMP3, VALUE(1), 1 }, + { SENSORS_IT87_VID, "vid", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_VID, VALUE(1), 2 }, + { SENSORS_IT87_FAN1_DIV, "fan1_div", SENSORS_IT87_FAN1, SENSORS_NO_MAPPING, + SENSORS_MODE_RW, IT87_SYSCTL_FAN_DIV, VALUE(1), + 0 }, + { SENSORS_IT87_FAN2_DIV, "fan2_div", SENSORS_IT87_FAN2, SENSORS_NO_MAPPING, + SENSORS_MODE_RW, IT87_SYSCTL_FAN_DIV, VALUE(2), + 0 }, + { SENSORS_IT87_FAN3_DIV, "fan3_div", SENSORS_IT87_FAN3, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_FAN_DIV, VALUE(3), + 0 }, + { SENSORS_IT87_ALARMS_FAN, "alarms_fan", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_ALARMS_FAN, VALUE(1), 0 }, + { SENSORS_IT87_ALARMS_VIN, "alarms_vin", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_ALARMS_VIN, VALUE(1), 0 }, + { SENSORS_IT87_ALARMS_TEMP, "alarms_temp", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING, + SENSORS_MODE_R, IT87_SYSCTL_ALARMS_TEMP, VALUE(1), 0 }, + { 0 } + }; + + + sensors_chip_features sensors_chip_features_list[] = { { SENSORS_LM78_PREFIX, lm78_features }, @@ -2174,5 +2282,6 @@ sensors_chip_features sensors_chip_features_list[] = { SENSORS_MTP008_PREFIX, mtp008_features }, { SENSORS_DS1621_PREFIX, ds1621_features }, { SENSORS_ADM1024_PREFIX, adm1024_features }, + { SENSORS_IT87_PREFIX, it87_features }, { 0 } }; diff --git a/lib/chips.h b/lib/chips.h index fe8dacb2..f0c389be 100644 --- a/lib/chips.h +++ b/lib/chips.h @@ -966,4 +966,55 @@ #define SENSORS_ADM1024_ALARMS 91 /* R */ #define SENSORS_ADM1024_ANALOG_OUT 92 /* RW */ +/* IT87xx chips */ + +#define SENSORS_IT87_PREFIX "it87" + +#define SENSORS_IT87_IN0 1 /* R */ +#define SENSORS_IT87_IN1 2 /* R */ +#define SENSORS_IT87_IN2 3 /* R */ +#define SENSORS_IT87_IN3 4 /* R */ +#define SENSORS_IT87_IN4 5 /* R */ +#define SENSORS_IT87_IN5 6 /* R */ +#define SENSORS_IT87_IN6 7 /* R */ +#define SENSORS_IT87_IN7 8 /* R */ +#define SENSORS_IT87_IN0_MIN 11 /* RW */ +#define SENSORS_IT87_IN1_MIN 12 /* RW */ +#define SENSORS_IT87_IN2_MIN 13 /* RW */ +#define SENSORS_IT87_IN3_MIN 14 /* RW */ +#define SENSORS_IT87_IN4_MIN 15 /* RW */ +#define SENSORS_IT87_IN5_MIN 16 /* RW */ +#define SENSORS_IT87_IN6_MIN 17 /* RW */ +#define SENSORS_IT87_IN7_MIN 18 /* RW */ +#define SENSORS_IT87_IN0_MAX 21 /* RW */ +#define SENSORS_IT87_IN1_MAX 22 /* RW */ +#define SENSORS_IT87_IN2_MAX 23 /* RW */ +#define SENSORS_IT87_IN3_MAX 24 /* RW */ +#define SENSORS_IT87_IN4_MAX 25 /* RW */ +#define SENSORS_IT87_IN5_MAX 26 /* RW */ +#define SENSORS_IT87_IN6_MAX 27 /* RW */ +#define SENSORS_IT87_IN7_MAX 28 /* RW */ +#define SENSORS_IT87_FAN1 31 /* R */ +#define SENSORS_IT87_FAN2 32 /* R */ +#define SENSORS_IT87_FAN3 33 /* R */ +#define SENSORS_IT87_FAN1_MIN 41 /* RW */ +#define SENSORS_IT87_FAN2_MIN 42 /* RW */ +#define SENSORS_IT87_FAN3_MIN 43 /* RW */ +#define SENSORS_IT87_TEMP1 51 /* R */ +#define SENSORS_IT87_TEMP2 52 /* R */ +#define SENSORS_IT87_TEMP3 53 /* R */ +#define SENSORS_IT87_TEMP1_LOW 54 /* RW */ +#define SENSORS_IT87_TEMP2_LOW 55 /* RW */ +#define SENSORS_IT87_TEMP3_LOW 56 /* RW */ +#define SENSORS_IT87_TEMP1_HIGH 57 /* RW */ +#define SENSORS_IT87_TEMP2_HIGH 58 /* RW */ +#define SENSORS_IT87_TEMP3_HIGH 59 /* RW */ +#define SENSORS_IT87_VID 61 /* R */ +#define SENSORS_IT87_FAN1_DIV 71 /* RW */ +#define SENSORS_IT87_FAN2_DIV 72 /* RW */ +#define SENSORS_IT87_FAN3_DIV 73 /* R (fan3 different) */ +#define SENSORS_IT87_ALARMS_FAN 81 /* R */ +#define SENSORS_IT87_ALARMS_VIN 82 /* R */ +#define SENSORS_IT87_ALARMS_TEMP 83 /* R */ + #endif /* def LIB_SENSORS_CHIPS_H */