]> git.sur5r.net Git - groeck-nct6775/blobdiff - README
Fix size of NCT6775_REG_TEMP_ALTERNATE array
[groeck-nct6775] / README
diff --git a/README b/README
index 5fedbca8090a0073500e13d13ddb284a6a0b9980..97190533810468c16b741ea1438838b3ae9c2d4f 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,11 @@
 Note
 ====
 
-This driver is experimental and has only been tested on NCT6775F.
+This driver is experimental and has only been tested on NCT6775F and NCT6776F.
+
+ABI (sysfs attribute support) is not final and is expected to change
+repeatedly before the driver is stable. Until then, please feel free
+to provide your input.
 
 This driver supercedes the NCT6775F and NCT6776F support in the W83627EHF
 driver.
@@ -19,7 +23,7 @@ Supported chips:
     Addresses scanned: ISA address retrieved from Super I/O registers
     Datasheet: Available from Nuvoton upon request
   * Nuvoton NCT6779D
-    Prefix: 'nct6776'
+    Prefix: 'nct6779'
     Addresses scanned: ISA address retrieved from Super I/O registers
     Datasheet: Available from Nuvoton upon request
 
@@ -32,10 +36,11 @@ Description
 This driver implements support for the Nuvoton NCT6775F, NCT6776F, and NCT6779D
 super I/O chips. We will refer to them collectively as Nuvoton chips.
 
-The chips implement 2 to 4 temperature sensors (9 for NCT6775F and NCT6776F),
-2 to 5 fan rotation speed sensors, 8 to 15 analog voltage sensors, one VID,
-alarms with beep warnings (control unimplemented), and some automatic fan
-regulation strategies (plus manual fan control mode).
+The chips implement up to 8 temperature sensors depending on the chip type and
+configuration. Temperatures used to control fan speed are reported separately.
+There are 4 to 5 fan rotation speed sensors, 8 to 15 analog voltage sensors,
+one VID, alarms with beep warnings (control unimplemented), and some automatic
+fan regulation strategies (plus manual fan control mode).
 
 The temperature sensor sources on all chips are configurable. temp4 and higher
 attributes are only reported if its temperature source differs from the
@@ -43,12 +48,11 @@ temperature sources of the already reported temperature sensors.
 The configured source for each of the temperature sensors is provided
 in tempX_label.
 
-Temperatures are measured in degrees Celsius and measurement resolution is 1
-degC for temp1 and and 0.5 degC for temp2 and temp3. For temp4 and higher,
-resolution is 1 degC for W83667HG-B and 0.5 degC for NCT6775F and NCT6776F.
-An alarm is triggered when the temperature gets higher than high limit;
-it stays on until the temperature falls below the hysteresis value.
-Alarms are only supported for temp1, temp2, and temp3.
+Temperatures are measured in degrees Celsius and measurement resolution is
+either 1 degC or 0.5 degC, depending on the temperature source and
+configuration. An alarm is triggered when the temperature gets higher than
+the high limit; it stays on until the temperature falls below the hysteresis
+value. Alarms are only supported for temp1, temp2, and temp3.
 
 Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
 triggered if the rotation speed has dropped below a programmable limit. Fan
@@ -66,12 +70,17 @@ In this mode, the chip attempts to keep the measured temperature in a
 predefined temperature range. If the temperature goes out of range, fan
 is driven slower/faster to reach the predefined range again.
 
-The mode works for fan1-fan4. Mapping of temperatures to pwm outputs is as
+The mode works for fan1-fan5. Mapping of temperatures to pwm outputs is as
 follows:
 
-temp1 -> pwm1
-temp2 -> pwm2
-temp3 -> pwm3
+temp11 -> pwm1
+temp12 -> pwm2
+temp13 -> pwm3
+temp14 -> pwm4 (NCT6779D only)
+temp15 -> pwm5 (NCT6779D only)
+
+The temperature source used to control pwm1..pwm5 (temp11..temp15) can be
+configured with pwm[1..5]_temp_sel.
 
 /sys files
 ----------
@@ -84,14 +93,13 @@ pwm[1-5] - this file stores PWM duty cycle or DC value (fan speed) in range:
           0 (stop) to 255 (full)
 
 pwm[1-5]_enable - this file controls mode of fan/temperature control:
+       * 0 Fan control disabled (fans set to maximum speed)
        * 1 Manual mode, write to pwm file any value 0-255 (full speed)
        * 2 "Thermal Cruise" mode
        * 3 "Fan Speed Cruise" mode
-       * 4 "Smart Fan III" mode
+       * 4 "Smart Fan III" mode (NCT6775F only)
        * 5 "Smart Fan IV" mode
 
-       SmartFan III mode is not supported on NCT6776F and NCT6779D.
-
 pwm[1-5]_mode - controls if output is PWM or DC level
         * 0 DC output (0 - 12v)
         * 1 PWM output
@@ -101,22 +109,54 @@ Thermal Cruise mode
 
 If the temperature is in the range defined by:
 
-pwm[1-4]_target    - set target temperature, unit millidegree Celsius
-                    (range 0 - 127000)
-pwm[1-4]_tolerance - tolerance, unit millidegree Celsius (range 0 - 15000)
+pwm[1-5]_target        Target temperature, unit millidegree Celsius
+                       (range 0 - 127000)
+pwm[1-5]_auto_temp1_hyst
+                       Hysteresis, unit millidegree Celsius
+                       Hysteresis value is relative to pwm[1-5]_auto_temp1.
+
+there are no changes to fan speed. Once the temperature leaves the interval,
+fan speed increases (temp is higher) or decreases if lower than desired,
+using the following steps and times.
+
+pwm[1-5]_start_output  fan pwm start value (range 1 - 255), to start fan
+                       when the temperature is above defined range.
+pwm[1-5]_stop_output   fan pwm (range 1 - 255) to stop fan.
+pwm[1-5]_step_up_time  milliseconds [ms] before fan speed is increased
+pwm[1-5]_step_down_time        milliseconds [ms] before fan speed is decreased
+pwm[1-5]_stop_time     how many milliseconds [ms] must elapse to switch
+                       corresponding fan off. (when the temperature was below
+                       defined range).
+
+Speed Cruise mode
+-----------------
+
+This modes tries to keep the fan speed constant.
+Untested; use at your own risk.
+
+
+Usage Notes
+-----------
+
+On some motherboards with NCT6776F, temperature readings for CPUTIN and AUXTIN
+are not correct. In addition, the reported CPUTIN may be _lower_ if the CPU load
+increases.
+
+On an ASUS P8H67V board, the observed relationship between measured and real
+temperatures was approximately
+       T(cpu,real) = 80 - (T(cpu,measured) / 2)
+       T(aux,real) = T(aux,measured) - 30000
+if the thermal sensor type was set to "thermistor(4)".
 
-There are no changes to fan speed. Once the temperature leaves the interval,
-fan speed increases (temp is higher) or decreases if lower than desired.
-There are defined steps and times, but not exported by the driver yet.
+The reported value for CPUTIN sometimes jumps significantly, up to 10 degrees C
+between measurements. Changing the sensor types on that board to diode(1) or
+thermal diode (3) did not help.
 
-pwm[1-4]_min_output - minimum fan speed (range 1 - 255), when the temperature
-                      is below defined range.
-pwm[1-4]_stop_time  - how many milliseconds [ms] must elapse to switch
-                      corresponding fan off. (when the temperature was below
-                      defined range).
+The problem with AUXTIN can possibly be addressed by setting temp3_offset to
+-30000. It is currently unknown, however, if the AUXTIN sensor is actually
+connected to anything. The CPUTIN sensor is obviously connected to something,
+but how the reported temperature relates to the real world is unknown. 
 
-Note: last two functions are influenced by other control bits, not yet exported
-      by the driver, so a change might not have any effect.
 
 Implementation Details
 ----------------------