1Kernel driver lm78
   4Supported chips:
   5  * National Semiconductor LM78 / LM78-J
   6    Prefix: 'lm78'
   7    Addresses scanned: I2C 0x28 - 0x2f, ISA 0x290 (8 I/O ports)
   8    Datasheet: Publicly available at the National Semiconductor website
  10  * National Semiconductor LM79
  11    Prefix: 'lm79'
  12    Addresses scanned: I2C 0x28 - 0x2f, ISA 0x290 (8 I/O ports)
  13    Datasheet: Publicly available at the National Semiconductor website
  16Authors: Frodo Looijaard <>
  17         Jean Delvare <>
  22This driver implements support for the National Semiconductor LM78, LM78-J
  23and LM79. They are described as 'Microprocessor System Hardware Monitors'.
  25There is almost no difference between the three supported chips. Functionally,
  26the LM78 and LM78-J are exactly identical. The LM79 has one more VID line,
  27which is used to report the lower voltages newer Pentium processors use.
  28From here on, LM7* means either of these three types.
  30The LM7* implements one temperature sensor, three fan rotation speed sensors,
  31seven voltage sensors, VID lines, alarms, and some miscellaneous stuff.
  33Temperatures are measured in degrees Celsius. An alarm is triggered once
  34when the Overtemperature Shutdown limit is crossed; it is triggered again
  35as soon as it drops below the Hysteresis value. A more useful behavior
  36can be found by setting the Hysteresis value to +127 degrees Celsius; in
  37this case, alarms are issued during all the time when the actual temperature
  38is above the Overtemperature Shutdown value. Measurements are guaranteed
  39between -55 and +125 degrees, with a resolution of 1 degree.
  41Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
  42triggered if the rotation speed has dropped below a programmable limit. Fan
  43readings can be divided by a programmable divider (1, 2, 4 or 8) to give
  44the readings more range or accuracy. Not all RPM values can accurately be
  45represented, so some rounding is done. With a divider of 2, the lowest
  46representable value is around 2600 RPM.
  48Voltage sensors (also known as IN sensors) report their values in volts.
  49An alarm is triggered if the voltage has crossed a programmable minimum
  50or maximum limit. Note that minimum in this case always means 'closest to
  51zero'; this is important for negative voltage measurements. All voltage
  52inputs can measure voltages between 0 and 4.08 volts, with a resolution
  53of 0.016 volt.
  55The VID lines encode the core voltage value: the voltage level your processor
  56should work with. This is hardcoded by the mainboard and/or processor itself.
  57It is a value in volts. When it is unconnected, you will often find the
  58value 3.50 V here.
  60If an alarm triggers, it will remain triggered until the hardware register
  61is read at least once. This means that the cause for the alarm may
  62already have disappeared! Note that in the current implementation, all
  63hardware registers are read whenever any data is read (unless it is less
  64than 1.5 seconds since the last update). This means that you can easily
  65miss once-only alarms.
  67The LM7* only updates its values each 1.5 seconds; reading it more often
  68will do no harm, but will return 'old' values.
  69 kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.