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

lm78.rst (3249B)


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