diff --git a/CHANGES b/CHANGES index fb7aa1b0..430ee6a4 100644 --- a/CHANGES +++ b/CHANGES @@ -9,6 +9,7 @@ SVN HEAD Add support for coretemp driver Major update/optimization of config-file scanner Add config-file scanner regression tests + Add f71872f support Man page i2cdetect.8: Describe the output convention Man page sensors.1: Update (option -c) and clean up Module icspll: Delete. It was useless and dangerous. @@ -20,6 +21,7 @@ SVN HEAD Hide error on missing f71805f fan Handle option -c more efficiently Drop option -a (show algorithm names) + Add f71872f support Program sensors-detect: Add SMSC DME1737 detection Add EPoX EP1308 detection (Hans Edgington) Add Intel Core thermal sensor detection diff --git a/lib/chips.c b/lib/chips.c index 6a53c763..ee16cdb3 100644 --- a/lib/chips.c +++ b/lib/chips.c @@ -5816,7 +5816,7 @@ static sensors_chip_feature smsc47b397_features[] = static sensors_chip_feature f71805f_features[] = { -/* 9 voltage inputs */ +/* 9 to 11 voltage inputs */ { SENSORS_F71805F_IN(0), "in0", NOMAP, NOMAP, R, F71805F_SYSCTL_IN0, VALUE(3), 3 }, { SENSORS_F71805F_IN(1), "in1", NOMAP, NOMAP, R, @@ -5835,6 +5835,10 @@ static sensors_chip_feature f71805f_features[] = F71805F_SYSCTL_IN7, VALUE(3), 3 }, { SENSORS_F71805F_IN(8), "in8", NOMAP, NOMAP, R, F71805F_SYSCTL_IN8, VALUE(3), 3 }, + { SENSORS_F71805F_IN(9), "in9", NOMAP, NOMAP, R, + NOSYSCTL, VALUE(3), 3 }, + { SENSORS_F71805F_IN(10), "in10", NOMAP, NOMAP, R, + NOSYSCTL, VALUE(3), 3 }, { SENSORS_F71805F_IN_MIN(0), "in0_min", SENSORS_F71805F_IN(0), SENSORS_F71805F_IN(0), RW, F71805F_SYSCTL_IN0, VALUE(1), 3 }, @@ -5862,6 +5866,12 @@ static sensors_chip_feature f71805f_features[] = { SENSORS_F71805F_IN_MIN(8), "in8_min", SENSORS_F71805F_IN(8), SENSORS_F71805F_IN(8), RW, F71805F_SYSCTL_IN8, VALUE(1), 3 }, + { SENSORS_F71805F_IN_MIN(9), "in9_min", + SENSORS_F71805F_IN(9), SENSORS_F71805F_IN(9), RW, + NOSYSCTL, VALUE(1), 3 }, + { SENSORS_F71805F_IN_MIN(10), "in10_min", + SENSORS_F71805F_IN(10), SENSORS_F71805F_IN(10), RW, + NOSYSCTL, VALUE(1), 3 }, { SENSORS_F71805F_IN_MAX(0), "in0_max", SENSORS_F71805F_IN(0), SENSORS_F71805F_IN(0), RW, F71805F_SYSCTL_IN0, VALUE(2), 3 }, @@ -5889,6 +5899,12 @@ static sensors_chip_feature f71805f_features[] = { SENSORS_F71805F_IN_MAX(8), "in8_max", SENSORS_F71805F_IN(8), SENSORS_F71805F_IN(8), RW, F71805F_SYSCTL_IN8, VALUE(2), 3 }, + { SENSORS_F71805F_IN_MAX(9), "in9_max", + SENSORS_F71805F_IN(9), SENSORS_F71805F_IN(9), RW, + NOSYSCTL, VALUE(2), 3 }, + { SENSORS_F71805F_IN_MAX(10), "in10_max", + SENSORS_F71805F_IN(10), SENSORS_F71805F_IN(10), RW, + NOSYSCTL, VALUE(2), 3 }, /* 3 fan tachometers */ { SENSORS_F71805F_FAN(1), "fan1", NOMAP, NOMAP, R, F71805F_SYSCTL_FAN1, VALUE(2), 0 }, @@ -6144,6 +6160,7 @@ sensors_chip_features sensors_chip_features_list[] = { SENSORS_LM93_PREFIX, lm93_features }, { SENSORS_SMSC47B397_PREFIX, smsc47b397_features }, { SENSORS_F71805F_PREFIX, f71805f_features }, + { SENSORS_F71872F_PREFIX, f71805f_features }, { SENSORS_ABITUGURU_PREFIX, abituguru_features }, { SENSORS_K8TEMP_PREFIX, k8temp_features }, { SENSORS_CORETEMP_PREFIX, coretemp_features }, diff --git a/lib/chips.h b/lib/chips.h index 2dcd4f63..5a3ef182 100644 --- a/lib/chips.h +++ b/lib/chips.h @@ -2178,10 +2178,11 @@ #define SENSORS_SMSC47B397_FAN3 0x13 /* R */ #define SENSORS_SMSC47B397_FAN4 0x14 /* R */ -/* Fintek F71805F chip */ +/* Fintek F71805F/FG and F71872F/FG chips */ #define SENSORS_F71805F_PREFIX "f71805f" +#define SENSORS_F71872F_PREFIX "f71872f" -/* in n from 0 to 8 */ +/* in n from 0 to 10 */ #define SENSORS_F71805F_IN(n) (1 + (n)) #define SENSORS_F71805F_IN_MIN(n) (16 + (n)) #define SENSORS_F71805F_IN_MAX(n) (31 + (n)) diff --git a/prog/sensors/chips.c b/prog/sensors/chips.c index 49d87a75..e598bbf0 100644 --- a/prog/sensors/chips.c +++ b/prog/sensors/chips.c @@ -6031,6 +6031,7 @@ void print_f71805f(const sensors_chip_name *name) char *label; double cur, min, max; int alarms, valid, i; + const int is_f71872f = !strcmp(name->prefix, "f71872f"); if (!sensors_get_feature(*name, SENSORS_F71805F_ALARMS_IN, &cur)) alarms = cur + 0.5; @@ -6039,7 +6040,7 @@ void print_f71805f(const sensors_chip_name *name) alarms = 0; } - for (i = 0; i < 9; i++) { + for (i = 0; i < (is_f71872f ? 11 : 9); i++) { if (!sensors_get_label_and_valid(*name, SENSORS_F71805F_IN(i), &label, &valid) && !sensors_get_feature(*name, SENSORS_F71805F_IN(i), &cur) diff --git a/prog/sensors/main.c b/prog/sensors/main.c index 259a8d90..e0b22e7d 100644 --- a/prog/sensors/main.c +++ b/prog/sensors/main.c @@ -416,6 +416,7 @@ struct match matches[] = { { "lm93", print_lm93 }, { "smsc47b397", print_smsc47b397 }, { "f71805f", print_f71805f }, + { "f71872f", print_f71805f }, { "abituguru", print_abituguru }, { "k8temp", print_k8temp }, { "coretemp", print_coretemp },