Index: lm-sensors/trunk/lib/chips.c
===================================================================
--- lm-sensors/trunk/lib/chips.c	(revision 293)
+++ lm-sensors/trunk/lib/chips.c	(revision 305)
@@ -666,4 +666,243 @@
   };
   
+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[] =
   { 
@@ -841,4 +1080,6 @@
  { 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 },
