From 7baac5cdef8a4e42db961b61427e947128c2acc9 Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Mon, 15 Dec 2003 21:24:09 +0000 Subject: [PATCH] Add W83L785TS-S support. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2181 7894878c-1315-0410-8ee3-d5d059ff63e0 --- lib/chips.c | 11 +++++++++++ lib/chips.h | 8 ++++++++ prog/sensors/chips.c | 19 +++++++++++++++++++ prog/sensors/chips.h | 1 + 4 files changed, 39 insertions(+) diff --git a/lib/chips.c b/lib/chips.c index ab0a2499..62a9e635 100644 --- a/lib/chips.c +++ b/lib/chips.c @@ -1505,6 +1505,16 @@ static sensors_chip_feature w83791d_features[] = { 0 } }; +static sensors_chip_feature w83l785ts_features[] = + { + { SENSORS_W83L785TS_TEMP, "temp", NOMAP, NOMAP, + R, W83L785TS_SYSCTL_TEMP, VALUE(2), 0 }, + { SENSORS_W83L785TS_TEMP_OVER, "temp_over", SENSORS_W83L785TS_TEMP, + SENSORS_W83L785TS_TEMP, R, + W83L785TS_SYSCTL_TEMP, VALUE(1), 0 }, + { 0 } + }; + static sensors_chip_feature adm9240_features[] = { { SENSORS_ADM9240_IN0, "2.5V", NOMAP, NOMAP, @@ -4789,6 +4799,7 @@ sensors_chip_features sensors_chip_features_list[] = /* Cheat on 83627THF for now - no separate #defines */ { SENSORS_W83627THF_PREFIX, w83782d_features }, { SENSORS_W83791D_PREFIX, w83791d_features }, + { SENSORS_W83L785TS_PREFIX, w83l785ts_features }, { SENSORS_AS99127F_PREFIX, as99127f_features }, { SENSORS_ASB100_PREFIX, asb100_features }, { SENSORS_ADM9240_PREFIX, adm9240_features }, diff --git a/lib/chips.h b/lib/chips.h index 1987fd44..b6625e6e 100644 --- a/lib/chips.h +++ b/lib/chips.h @@ -704,6 +704,14 @@ #define SENSORS_W83783S_SENS2 92 /* RW */ +/* W83L785TS-S chips */ + +#define SENSORS_W83L785TS_PREFIX "w83l785ts" + +#define SENSORS_W83L785TS_TEMP 51 /* R */ +#define SENSORS_W83L785TS_TEMP_OVER 52 /* R for now */ + + /* Analog Devices ADM9240 chips */ #define SENSORS_ADM9240_PREFIX "adm9240" diff --git a/prog/sensors/chips.c b/prog/sensors/chips.c index 74012534..fef007de 100644 --- a/prog/sensors/chips.c +++ b/prog/sensors/chips.c @@ -2460,6 +2460,25 @@ void print_w83781d(const sensors_chip_name *name) free_the_label(&label); } +void print_w83l785ts(const sensors_chip_name *name) +{ + char *label; + double cur, over; + int valid; + + if (!sensors_get_label_and_valid(*name, SENSORS_W83L785TS_TEMP, &label, &valid) + && !sensors_get_feature(*name, SENSORS_W83L785TS_TEMP, &cur) + && !sensors_get_feature(*name, SENSORS_W83L785TS_TEMP_OVER, &over)) { + if (valid) { + print_label(label, 10); + print_temp_info(cur, over, 0, MAXONLY, 0, 0); + printf("\n"); + } + } else + printf("ERROR: Can't get temperature data!\n"); + free_the_label(&label); +} + void print_maxilife(const sensors_chip_name *name) { char *label = NULL; diff --git a/prog/sensors/chips.h b/prog/sensors/chips.h index 2d4533d8..d3ee5e0f 100644 --- a/prog/sensors/chips.h +++ b/prog/sensors/chips.h @@ -39,6 +39,7 @@ extern void print_gl518(const sensors_chip_name *name); extern void print_lm80(const sensors_chip_name *name); extern void print_lm85(const sensors_chip_name *name); extern void print_w83781d(const sensors_chip_name *name); +extern void print_w83l785ts(const sensors_chip_name *name); extern void print_maxilife(const sensors_chip_name *name); extern void print_ddcmon(const sensors_chip_name *name); extern void print_eeprom(const sensors_chip_name *name);