2
0
mirror of https://github.com/lm-sensors/lm-sensors synced 2025-08-30 05:48:07 +00:00

Added initial support for 83782d/83783s.

No alarms for in7/in8 yet.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@305 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
Mark D. Studebaker 1999-03-11 03:19:54 +00:00
parent b20c07806e
commit 8a23e0cf04
4 changed files with 395 additions and 22 deletions

View File

@ -665,6 +665,245 @@ static sensors_chip_feature w83781d_features[] =
{ 0 }
};
static sensors_chip_feature w83782d_features[] =
{
{ SENSORS_W83782D_IN0, "in0", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN0, VALUE(3), 2 },
{ SENSORS_W83782D_IN1, "in1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN1, VALUE(3), 2 },
{ SENSORS_W83782D_IN2, "in2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN2, VALUE(3), 2 },
{ SENSORS_W83782D_IN3, "in3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN3, VALUE(3), 2 },
{ SENSORS_W83782D_IN4, "in4", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN4, VALUE(3), 2 },
{ SENSORS_W83782D_IN5, "in5", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN5, VALUE(3), 2 },
{ SENSORS_W83782D_IN6, "in6", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN6, VALUE(3), 2 },
{ SENSORS_W83782D_IN7, "in7", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN7, VALUE(3), 2 },
{ SENSORS_W83782D_IN8, "in8", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN8, VALUE(3), 2 },
{ SENSORS_W83782D_IN0_MIN, "in0_min", SENSORS_W83782D_IN0,
SENSORS_W83782D_IN0, SENSORS_MODE_RW,
W83781D_SYSCTL_IN0, VALUE(1), 2 },
{ SENSORS_W83782D_IN1_MIN, "in1_min", SENSORS_W83782D_IN1,
SENSORS_W83782D_IN1, SENSORS_MODE_RW,
W83781D_SYSCTL_IN1, VALUE(1), 2 },
{ SENSORS_W83782D_IN2_MIN, "in2_min", SENSORS_W83782D_IN2,
SENSORS_W83782D_IN2, SENSORS_MODE_RW,
W83781D_SYSCTL_IN2, VALUE(1), 2 },
{ SENSORS_W83782D_IN3_MIN, "in3_min", SENSORS_W83782D_IN3,
SENSORS_W83782D_IN3, SENSORS_MODE_RW,
W83781D_SYSCTL_IN3, VALUE(1), 2 },
{ SENSORS_W83782D_IN4_MIN, "in4_min", SENSORS_W83782D_IN4,
SENSORS_W83782D_IN4, SENSORS_MODE_RW,
W83781D_SYSCTL_IN4, VALUE(1), 2 },
{ SENSORS_W83782D_IN5_MIN, "in5_min", SENSORS_W83782D_IN5,
SENSORS_W83782D_IN5, SENSORS_MODE_RW,
W83781D_SYSCTL_IN5, VALUE(1), 2 },
{ SENSORS_W83782D_IN6_MIN, "in6_min", SENSORS_W83782D_IN6,
SENSORS_W83782D_IN6, SENSORS_MODE_RW,
W83781D_SYSCTL_IN6, VALUE(1), 2 },
{ SENSORS_W83782D_IN7_MIN, "in7_min", SENSORS_W83782D_IN7,
SENSORS_W83782D_IN7, SENSORS_MODE_RW,
W83781D_SYSCTL_IN7, VALUE(1), 2 },
{ SENSORS_W83782D_IN8_MIN, "in8_min", SENSORS_W83782D_IN8,
SENSORS_W83782D_IN8, SENSORS_MODE_RW,
W83781D_SYSCTL_IN8, VALUE(1), 2 },
{ SENSORS_W83782D_IN0_MAX, "in0_max", SENSORS_W83782D_IN0,
SENSORS_W83782D_IN0, SENSORS_MODE_RW,
W83781D_SYSCTL_IN0, VALUE(2), 2 },
{ SENSORS_W83782D_IN1_MAX, "in1_max", SENSORS_W83782D_IN1,
SENSORS_W83782D_IN1, SENSORS_MODE_RW,
W83781D_SYSCTL_IN1, VALUE(2), 2 },
{ SENSORS_W83782D_IN2_MAX, "in2_max", SENSORS_W83782D_IN2,
SENSORS_W83782D_IN2, SENSORS_MODE_RW,
W83781D_SYSCTL_IN2, VALUE(2), 2 },
{ SENSORS_W83782D_IN3_MAX, "in3_max", SENSORS_W83782D_IN3,
SENSORS_W83782D_IN3, SENSORS_MODE_RW,
W83781D_SYSCTL_IN3, VALUE(2), 2 },
{ SENSORS_W83782D_IN4_MAX, "in4_max", SENSORS_W83782D_IN4,
SENSORS_W83782D_IN4, SENSORS_MODE_RW,
W83781D_SYSCTL_IN4, VALUE(2), 2 },
{ SENSORS_W83782D_IN5_MAX, "in5_max", SENSORS_W83782D_IN5,
SENSORS_W83782D_IN5, SENSORS_MODE_RW,
W83781D_SYSCTL_IN5, VALUE(2), 2 },
{ SENSORS_W83782D_IN6_MAX, "in6_max", SENSORS_W83782D_IN6,
SENSORS_W83782D_IN6, SENSORS_MODE_RW,
W83781D_SYSCTL_IN6, VALUE(2), 2 },
{ SENSORS_W83782D_IN7_MAX, "in7_max", SENSORS_W83782D_IN7,
SENSORS_W83782D_IN7, SENSORS_MODE_RW,
W83781D_SYSCTL_IN7, VALUE(2), 2 },
{ SENSORS_W83782D_IN8_MAX, "in8_max", SENSORS_W83782D_IN8,
SENSORS_W83782D_IN8, SENSORS_MODE_RW,
W83781D_SYSCTL_IN8, VALUE(2), 2 },
{ SENSORS_W83782D_FAN1, "fan1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_FAN1, VALUE(2), 0 },
{ SENSORS_W83782D_FAN2, "fan2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_FAN2, VALUE(2), 0 },
{ SENSORS_W83782D_FAN1_MIN, "fan1_min", SENSORS_W83782D_FAN1,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN1, VALUE(1), 0 },
{ SENSORS_W83782D_FAN2_MIN, "fan2_min", SENSORS_W83782D_FAN2,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN2, VALUE(1), 0 },
{ SENSORS_W83782D_TEMP1, "temp1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_TEMP1, VALUE(3), 1 },
{ SENSORS_W83782D_TEMP1_HYST, "temp1_hyst", SENSORS_W83782D_TEMP1,
SENSORS_W83782D_TEMP1, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP1, VALUE(2), 1 },
{ SENSORS_W83782D_TEMP1_OVER, "temp1_over", SENSORS_W83782D_TEMP1,
SENSORS_W83782D_TEMP1, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP1, VALUE(1), 1 },
{ SENSORS_W83782D_TEMP2, "temp2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_TEMP2, VALUE(3), 1 },
{ SENSORS_W83782D_TEMP2_HYST, "temp2_hyst", SENSORS_W83782D_TEMP2,
SENSORS_W83782D_TEMP2, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP2, VALUE(2), 1 },
{ SENSORS_W83782D_TEMP2_OVER, "temp2_over", SENSORS_W83782D_TEMP2,
SENSORS_W83782D_TEMP2, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP2, VALUE(1), 1 },
{ SENSORS_W83782D_TEMP3, "temp3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_TEMP3, VALUE(3), 1 },
{ SENSORS_W83782D_TEMP3_HYST, "temp3_hyst", SENSORS_W83782D_TEMP3,
SENSORS_W83782D_TEMP3, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP3, VALUE(2), 1 },
{ SENSORS_W83782D_TEMP3_OVER, "temp3_over", SENSORS_W83782D_TEMP3,
SENSORS_W83782D_TEMP3, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP3, VALUE(1), 1 },
{ SENSORS_W83782D_VID, "vid", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_VID, VALUE(1), 2 },
{ SENSORS_W83782D_FAN1_DIV, "fan1_div", SENSORS_W83782D_FAN1,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN_DIV, VALUE(1), 0 },
{ SENSORS_W83782D_FAN2_DIV, "fan2_div", SENSORS_W83782D_FAN2,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN_DIV, VALUE(2), 0 },
{ SENSORS_W83782D_ALARMS, "alarms", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_ALARMS, VALUE(1), 0 },
{ SENSORS_W83782D_BEEP_ENABLE, "beep_enable", SENSORS_W83782D_ALARMS,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_BEEP, VALUE(1), 0 },
{ SENSORS_W83782D_BEEPS, "beeps", SENSORS_W83782D_ALARMS,
SENSORS_W83782D_ALARMS, SENSORS_MODE_RW,
W83781D_SYSCTL_BEEP, VALUE(2), 0 },
{ 0 }
};
static sensors_chip_feature w83783s_features[] =
{
{ SENSORS_W83783S_IN0, "in0", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN0, VALUE(3), 2 },
{ SENSORS_W83783S_IN1, "in1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN1, VALUE(3), 2 },
{ SENSORS_W83783S_IN2, "in2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN2, VALUE(3), 2 },
{ SENSORS_W83783S_IN3, "in3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN3, VALUE(3), 2 },
{ SENSORS_W83783S_IN4, "in4", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN4, VALUE(3), 2 },
{ SENSORS_W83783S_IN5, "in5", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN5, VALUE(3), 2 },
{ SENSORS_W83783S_IN6, "in6", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_IN6, VALUE(3), 2 },
{ SENSORS_W83783S_IN0_MIN, "in0_min", SENSORS_W83783S_IN0,
SENSORS_W83783S_IN0, SENSORS_MODE_RW,
W83781D_SYSCTL_IN0, VALUE(1), 2 },
{ SENSORS_W83783S_IN1_MIN, "in1_min", SENSORS_W83783S_IN1,
SENSORS_W83783S_IN1, SENSORS_MODE_RW,
W83781D_SYSCTL_IN1, VALUE(1), 2 },
{ SENSORS_W83783S_IN2_MIN, "in2_min", SENSORS_W83783S_IN2,
SENSORS_W83783S_IN2, SENSORS_MODE_RW,
W83781D_SYSCTL_IN2, VALUE(1), 2 },
{ SENSORS_W83783S_IN3_MIN, "in3_min", SENSORS_W83783S_IN3,
SENSORS_W83783S_IN3, SENSORS_MODE_RW,
W83781D_SYSCTL_IN3, VALUE(1), 2 },
{ SENSORS_W83783S_IN4_MIN, "in4_min", SENSORS_W83783S_IN4,
SENSORS_W83783S_IN4, SENSORS_MODE_RW,
W83781D_SYSCTL_IN4, VALUE(1), 2 },
{ SENSORS_W83783S_IN5_MIN, "in5_min", SENSORS_W83783S_IN5,
SENSORS_W83783S_IN5, SENSORS_MODE_RW,
W83781D_SYSCTL_IN5, VALUE(1), 2 },
{ SENSORS_W83783S_IN6_MIN, "in6_min", SENSORS_W83783S_IN6,
SENSORS_W83783S_IN6, SENSORS_MODE_RW,
W83781D_SYSCTL_IN6, VALUE(1), 2 },
{ SENSORS_W83783S_IN0_MAX, "in0_max", SENSORS_W83783S_IN0,
SENSORS_W83783S_IN0, SENSORS_MODE_RW,
W83781D_SYSCTL_IN0, VALUE(2), 2 },
{ SENSORS_W83783S_IN1_MAX, "in1_max", SENSORS_W83783S_IN1,
SENSORS_W83783S_IN1, SENSORS_MODE_RW,
W83781D_SYSCTL_IN1, VALUE(2), 2 },
{ SENSORS_W83783S_IN2_MAX, "in2_max", SENSORS_W83783S_IN2,
SENSORS_W83783S_IN2, SENSORS_MODE_RW,
W83781D_SYSCTL_IN2, VALUE(2), 2 },
{ SENSORS_W83783S_IN3_MAX, "in3_max", SENSORS_W83783S_IN3,
SENSORS_W83783S_IN3, SENSORS_MODE_RW,
W83781D_SYSCTL_IN3, VALUE(2), 2 },
{ SENSORS_W83783S_IN4_MAX, "in4_max", SENSORS_W83783S_IN4,
SENSORS_W83783S_IN4, SENSORS_MODE_RW,
W83781D_SYSCTL_IN4, VALUE(2), 2 },
{ SENSORS_W83783S_IN5_MAX, "in5_max", SENSORS_W83783S_IN5,
SENSORS_W83783S_IN5, SENSORS_MODE_RW,
W83781D_SYSCTL_IN5, VALUE(2), 2 },
{ SENSORS_W83783S_IN6_MAX, "in6_max", SENSORS_W83783S_IN6,
SENSORS_W83783S_IN6, SENSORS_MODE_RW,
W83781D_SYSCTL_IN6, VALUE(2), 2 },
{ SENSORS_W83783S_FAN1, "fan1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_FAN1, VALUE(2), 0 },
{ SENSORS_W83783S_FAN2, "fan2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_FAN2, VALUE(2), 0 },
{ SENSORS_W83783S_FAN3, "fan3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_FAN3, VALUE(2), 0 },
{ SENSORS_W83783S_FAN1_MIN, "fan1_min", SENSORS_W83783S_FAN1,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN1, VALUE(1), 0 },
{ SENSORS_W83783S_FAN2_MIN, "fan2_min", SENSORS_W83783S_FAN2,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN2, VALUE(1), 0 },
{ SENSORS_W83783S_FAN3_MIN, "fan3_min", SENSORS_W83783S_FAN3,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN3, VALUE(1), 0 },
{ SENSORS_W83783S_TEMP1, "temp1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_TEMP1, VALUE(3), 1 },
{ SENSORS_W83783S_TEMP1_HYST, "temp1_hyst", SENSORS_W83783S_TEMP1,
SENSORS_W83783S_TEMP1, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP1, VALUE(2), 1 },
{ SENSORS_W83783S_TEMP1_OVER, "temp1_over", SENSORS_W83783S_TEMP1,
SENSORS_W83783S_TEMP1, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP1, VALUE(1), 1 },
{ SENSORS_W83783S_TEMP2, "temp2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_TEMP2, VALUE(3), 1 },
{ SENSORS_W83783S_TEMP2_HYST, "temp2_hyst", SENSORS_W83783S_TEMP2,
SENSORS_W83783S_TEMP2, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP2, VALUE(2), 1 },
{ SENSORS_W83783S_TEMP2_OVER, "temp2_over", SENSORS_W83783S_TEMP2,
SENSORS_W83783S_TEMP2, SENSORS_MODE_RW,
W83781D_SYSCTL_TEMP2, VALUE(1), 1 },
{ SENSORS_W83783S_VID, "vid", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_VID, VALUE(1), 2 },
{ SENSORS_W83783S_FAN1_DIV, "fan1_div", SENSORS_W83783S_FAN1,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN_DIV, VALUE(1), 0 },
{ SENSORS_W83783S_FAN2_DIV, "fan2_div", SENSORS_W83783S_FAN2,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_FAN_DIV, VALUE(2), 0 },
{ SENSORS_W83783S_FAN3_DIV, "fan3_div", SENSORS_W83783S_FAN3,
SENSORS_NO_MAPPING, SENSORS_MODE_R,
W83781D_SYSCTL_FAN_DIV, VALUE(3), 0 },
{ SENSORS_W83783S_ALARMS, "alarms", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, W83781D_SYSCTL_ALARMS, VALUE(1), 0 },
{ SENSORS_W83783S_BEEP_ENABLE, "beep_enable", SENSORS_W83783S_ALARMS,
SENSORS_NO_MAPPING, SENSORS_MODE_RW,
W83781D_SYSCTL_BEEP, VALUE(1), 0 },
{ SENSORS_W83783S_BEEPS, "beeps", SENSORS_W83783S_ALARMS,
SENSORS_W83783S_ALARMS, SENSORS_MODE_RW,
W83781D_SYSCTL_BEEP, VALUE(2), 0 },
{ 0 }
};
static sensors_chip_feature adm9240_features[] =
{
{ SENSORS_ADM9240_IN0, "2.5V", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
@ -840,6 +1079,8 @@ sensors_chip_features sensors_chip_features_list[] =
{ SENSORS_GL518R80_PREFIX, gl518r80_features },
{ SENSORS_LM80_PREFIX, lm80_features },
{ SENSORS_W83781D_PREFIX, w83781d_features },
{ SENSORS_W83782D_PREFIX, w83782d_features },
{ SENSORS_W83783S_PREFIX, w83783s_features },
{ SENSORS_ADM9240_PREFIX, adm9240_features },
{ SENSORS_ADM1021_PREFIX, adm1021_features },
{ SENSORS_SIS5595_PREFIX, sis5595_features },

View File

@ -330,6 +330,104 @@
#define SENSORS_W83781D_BEEPS 83 /* RW */
/* Winbond W83782D chips */
#define SENSORS_W83782D_PREFIX "w83782d"
#define SENSORS_W83782D_IN0 1 /* R */
#define SENSORS_W83782D_IN1 2 /* R */
#define SENSORS_W83782D_IN2 3 /* R */
#define SENSORS_W83782D_IN3 4 /* R */
#define SENSORS_W83782D_IN4 5 /* R */
#define SENSORS_W83782D_IN5 6 /* R */
#define SENSORS_W83782D_IN6 7 /* R */
#define SENSORS_W83782D_IN7 8 /* R */
#define SENSORS_W83782D_IN8 9 /* R */
#define SENSORS_W83782D_IN0_MIN 11 /* RW */
#define SENSORS_W83782D_IN1_MIN 12 /* RW */
#define SENSORS_W83782D_IN2_MIN 13 /* RW */
#define SENSORS_W83782D_IN3_MIN 14 /* RW */
#define SENSORS_W83782D_IN4_MIN 15 /* RW */
#define SENSORS_W83782D_IN5_MIN 16 /* RW */
#define SENSORS_W83782D_IN6_MIN 17 /* RW */
#define SENSORS_W83782D_IN7_MIN 18 /* RW */
#define SENSORS_W83782D_IN8_MIN 19 /* RW */
#define SENSORS_W83782D_IN0_MAX 21 /* RW */
#define SENSORS_W83782D_IN1_MAX 22 /* RW */
#define SENSORS_W83782D_IN2_MAX 23 /* RW */
#define SENSORS_W83782D_IN3_MAX 24 /* RW */
#define SENSORS_W83782D_IN4_MAX 25 /* RW */
#define SENSORS_W83782D_IN5_MAX 26 /* RW */
#define SENSORS_W83782D_IN6_MAX 27 /* RW */
#define SENSORS_W83782D_IN7_MAX 28 /* RW */
#define SENSORS_W83782D_IN8_MAX 29 /* RW */
#define SENSORS_W83782D_FAN1 31 /* R */
#define SENSORS_W83782D_FAN2 32 /* R */
#define SENSORS_W83782D_FAN1_MIN 41 /* RW */
#define SENSORS_W83782D_FAN2_MIN 42 /* RW */
#define SENSORS_W83782D_TEMP1 51 /* R */
#define SENSORS_W83782D_TEMP1_HYST 52 /* RW */
#define SENSORS_W83782D_TEMP1_OVER 53 /* RW */
#define SENSORS_W83782D_TEMP2 54 /* R */
#define SENSORS_W83782D_TEMP2_HYST 55 /* RW */
#define SENSORS_W83782D_TEMP2_OVER 56 /* RW */
#define SENSORS_W83782D_TEMP3 57 /* R */
#define SENSORS_W83782D_TEMP3_HYST 58 /* RW */
#define SENSORS_W83782D_TEMP3_OVER 59 /* RW */
#define SENSORS_W83782D_VID 61 /* R */
#define SENSORS_W83782D_FAN1_DIV 71 /* RW */
#define SENSORS_W83782D_FAN2_DIV 72 /* RW */
#define SENSORS_W83782D_ALARMS 81 /* R */
#define SENSORS_W83782D_BEEP_ENABLE 82 /* RW */
#define SENSORS_W83782D_BEEPS 83 /* RW */
/* Winbond W83783S chips */
#define SENSORS_W83783S_PREFIX "w83783s"
#define SENSORS_W83783S_IN0 1 /* R */
#define SENSORS_W83783S_IN1 2 /* R */
#define SENSORS_W83783S_IN2 3 /* R */
#define SENSORS_W83783S_IN3 4 /* R */
#define SENSORS_W83783S_IN4 5 /* R */
#define SENSORS_W83783S_IN5 6 /* R */
#define SENSORS_W83783S_IN6 7 /* R */
#define SENSORS_W83783S_IN0_MIN 11 /* RW */
#define SENSORS_W83783S_IN1_MIN 12 /* RW */
#define SENSORS_W83783S_IN2_MIN 13 /* RW */
#define SENSORS_W83783S_IN3_MIN 14 /* RW */
#define SENSORS_W83783S_IN4_MIN 15 /* RW */
#define SENSORS_W83783S_IN5_MIN 16 /* RW */
#define SENSORS_W83783S_IN6_MIN 17 /* RW */
#define SENSORS_W83783S_IN0_MAX 21 /* RW */
#define SENSORS_W83783S_IN1_MAX 22 /* RW */
#define SENSORS_W83783S_IN2_MAX 23 /* RW */
#define SENSORS_W83783S_IN3_MAX 24 /* RW */
#define SENSORS_W83783S_IN4_MAX 25 /* RW */
#define SENSORS_W83783S_IN5_MAX 26 /* RW */
#define SENSORS_W83783S_IN6_MAX 27 /* RW */
#define SENSORS_W83783S_FAN1 31 /* R */
#define SENSORS_W83783S_FAN2 32 /* R */
#define SENSORS_W83783S_FAN3 33 /* R */
#define SENSORS_W83783S_FAN1_MIN 41 /* RW */
#define SENSORS_W83783S_FAN2_MIN 42 /* RW */
#define SENSORS_W83783S_FAN3_MIN 43 /* RW */
#define SENSORS_W83783S_TEMP1 51 /* R */
#define SENSORS_W83783S_TEMP1_HYST 52 /* RW */
#define SENSORS_W83783S_TEMP1_OVER 53 /* RW */
#define SENSORS_W83783S_TEMP2 54 /* R */
#define SENSORS_W83783S_TEMP2_HYST 55 /* RW */
#define SENSORS_W83783S_TEMP2_OVER 56 /* RW */
#define SENSORS_W83783S_VID 61 /* R */
#define SENSORS_W83783S_FAN1_DIV 71 /* RW */
#define SENSORS_W83783S_FAN2_DIV 72 /* RW */
#define SENSORS_W83783S_FAN3_DIV 73 /* R (yes, really! */
#define SENSORS_W83783S_ALARMS 81 /* R */
#define SENSORS_W83783S_BEEP_ENABLE 82 /* RW */
#define SENSORS_W83783S_BEEPS 83 /* RW */
/* Analog Devices ADM9240 chips */
#define SENSORS_ADM9240_PREFIX "adm9240"

View File

@ -532,7 +532,10 @@ void print_w83781d(const sensors_chip_name *name)
char *label = NULL;
double cur,min,max,fdiv;
int alarms,beeps;
int is82d, is83s;
is82d = !strcmp(name->prefix,"w83782d");
is83s = !strcmp(name->prefix,"w83782s");
if (!sensors_get_feature(*name,SENSORS_W83781D_ALARMS,&cur))
alarms = cur + 0.5;
else {
@ -613,17 +616,44 @@ void print_w83781d(const sensors_chip_name *name)
} else
printf("ERROR: Can't get IN5 data!\n");
free_the_label(&label);
if (!sensors_get_label(*name,SENSORS_W83781D_IN6,&label) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6,&cur) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6_MIN,&min) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6_MAX,&max)) {
print_label(label,10);
printf("%+6.2f V (min = %+6.2f V, max = %+6.2f V) %s %s\n",
cur,min,max,alarms&W83781D_ALARM_IN6?"ALARM":" ",
beeps&W83781D_ALARM_IN6?"(beep)":"");
} else
printf("ERROR: Can't get IN6 data!\n");
free_the_label(&label);
if (!is83s) {
if (!sensors_get_label(*name,SENSORS_W83781D_IN6,&label) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6,&cur) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6_MIN,&min) &&
!sensors_get_feature(*name,SENSORS_W83781D_IN6_MAX,&max)) {
print_label(label,10);
printf("%+6.2f V (min = %+6.2f V, max = %+6.2f V) %s %s\n",
cur,min,max,alarms&W83781D_ALARM_IN6?"ALARM":" ",
beeps&W83781D_ALARM_IN6?"(beep)":"");
} else
printf("ERROR: Can't get IN6 data!\n");
free_the_label(&label);
}
/* FIXME - add alarms 7 and 8 */
if (is82d) {
if (!sensors_get_label(*name,SENSORS_W83782D_IN7,&label) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN7,&cur) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN7_MIN,&min) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN7_MAX,&max)) {
print_label(label,10);
printf("%+6.2f V (min = %+6.2f V, max = %+6.2f V) %s %s\n",
cur,min,max,alarms&W83781D_ALARM_IN6?"ALARM":" ",
beeps&W83781D_ALARM_IN6?"(beep)":"");
} else
printf("ERROR: Can't get IN7 data!\n");
free_the_label(&label);
if (!sensors_get_label(*name,SENSORS_W83782D_IN8,&label) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN8,&cur) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN8_MIN,&min) &&
!sensors_get_feature(*name,SENSORS_W83782D_IN8_MAX,&max)) {
print_label(label,10);
printf("%+6.2f V (min = %+6.2f V, max = %+6.2f V) %s %s\n",
cur,min,max,alarms&W83781D_ALARM_IN6?"ALARM":" ",
beeps&W83781D_ALARM_IN6?"(beep)":"");
} else
printf("ERROR: Can't get IN6 data!\n");
free_the_label(&label);
}
if (!sensors_get_label(*name,SENSORS_W83781D_FAN1,&label) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN1,&cur) &&
@ -647,16 +677,18 @@ void print_w83781d(const sensors_chip_name *name)
} else
printf("ERROR: Can't get FAN2 data!\n");
free_the_label(&label);
if (!sensors_get_label(*name,SENSORS_W83781D_FAN3,&label) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3,&cur) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3_DIV,&fdiv) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3_MIN,&min)) {
print_label(label,10);
printf("%4.0f RPM (min = %4.0f RPM, div = %1.0f) %s %s\n",
cur,min,fdiv, alarms&W83781D_ALARM_FAN3?"ALARM":" ",
beeps&W83781D_ALARM_FAN3?"(beep)":"");
} else
printf("ERROR: Can't get FAN3 data!\n");
if (!is82d) {
if (!sensors_get_label(*name,SENSORS_W83781D_FAN3,&label) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3,&cur) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3_DIV,&fdiv) &&
!sensors_get_feature(*name,SENSORS_W83781D_FAN3_MIN,&min)) {
print_label(label,10);
printf("%4.0f RPM (min = %4.0f RPM, div = %1.0f) %s %s\n",
cur,min,fdiv, alarms&W83781D_ALARM_FAN3?"ALARM":" ",
beeps&W83781D_ALARM_FAN3?"(beep)":"");
} else
printf("ERROR: Can't get FAN3 data!\n");
}
free_the_label(&label);
if (!sensors_get_label(*name,SENSORS_W83781D_TEMP1,&label) &&

View File

@ -254,7 +254,9 @@ void do_a_print(sensors_chip_name name)
else if (!strcmp(name.prefix,"gl518sm-r00") ||
!strcmp(name.prefix,"gl518sm-r80"))
print_gl518(&name);
else if (!strcmp(name.prefix,"w83781d"))
else if ((!strcmp(name.prefix,"w83781d")) ||
(!strcmp(name.prefix,"w83782d")) ||
(!strcmp(name.prefix,"w83783s")))
print_w83781d(&name);
else
print_unknown_chip(&name);