cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

lm80.rst (2880B)


      1Kernel driver lm80
      2==================
      3
      4Supported chips:
      5
      6  * National Semiconductor LM80
      7
      8    Prefix: 'lm80'
      9
     10    Addresses scanned: I2C 0x28 - 0x2f
     11
     12    Datasheet: Publicly available at the National Semiconductor website
     13
     14	       http://www.national.com/
     15
     16  * National Semiconductor LM96080
     17
     18    Prefix: 'lm96080'
     19
     20    Addresses scanned: I2C 0x28 - 0x2f
     21
     22    Datasheet: Publicly available at the National Semiconductor website
     23
     24	       http://www.national.com/
     25
     26
     27Authors:
     28       - Frodo Looijaard <frodol@dds.nl>,
     29       - Philip Edelbrock <phil@netroedge.com>
     30
     31Description
     32-----------
     33
     34This driver implements support for the National Semiconductor LM80.
     35It is described as a 'Serial Interface ACPI-Compatible Microprocessor
     36System Hardware Monitor'. The LM96080 is a more recent incarnation,
     37it is pin and register compatible, with a few additional features not
     38yet supported by the driver.
     39
     40The LM80 implements one temperature sensor, two fan rotation speed sensors,
     41seven voltage sensors, alarms, and some miscellaneous stuff.
     42
     43Temperatures are measured in degrees Celsius. There are two sets of limits
     44which operate independently. When the HOT Temperature Limit is crossed,
     45this will cause an alarm that will be reasserted until the temperature
     46drops below the HOT Hysteresis. The Overtemperature Shutdown (OS) limits
     47should work in the same way (but this must be checked; the datasheet
     48is unclear about this). Measurements are guaranteed between -55 and
     49+125 degrees. The current temperature measurement has a resolution of
     500.0625 degrees; the limits have a resolution of 1 degree.
     51
     52Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
     53triggered if the rotation speed has dropped below a programmable limit. Fan
     54readings can be divided by a programmable divider (1, 2, 4 or 8) to give
     55the readings more range or accuracy. Not all RPM values can accurately be
     56represented, so some rounding is done. With a divider of 2, the lowest
     57representable value is around 2600 RPM.
     58
     59Voltage sensors (also known as IN sensors) report their values in volts.
     60An alarm is triggered if the voltage has crossed a programmable minimum
     61or maximum limit. Note that minimum in this case always means 'closest to
     62zero'; this is important for negative voltage measurements. All voltage
     63inputs can measure voltages between 0 and 2.55 volts, with a resolution
     64of 0.01 volt.
     65
     66If an alarm triggers, it will remain triggered until the hardware register
     67is read at least once. This means that the cause for the alarm may
     68already have disappeared! Note that in the current implementation, all
     69hardware registers are read whenever any data is read (unless it is less
     70than 2.0 seconds since the last update). This means that you can easily
     71miss once-only alarms.
     72
     73The LM80 only updates its values each 1.5 seconds; reading it more often
     74will do no harm, but will return 'old' values.