lm87 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. Kernel driver lm87
  2. ==================
  3. Supported chips:
  4. * National Semiconductor LM87
  5. Prefix: 'lm87'
  6. Addresses scanned: I2C 0x2c - 0x2f
  7. Datasheet: http://www.national.com/pf/LM/LM87.html
  8. Authors:
  9. Frodo Looijaard <frodol@dds.nl>,
  10. Philip Edelbrock <phil@netroedge.com>,
  11. Mark Studebaker <mdsxyz123@yahoo.com>,
  12. Stephen Rousset <stephen.rousset@rocketlogix.com>,
  13. Dan Eaton <dan.eaton@rocketlogix.com>,
  14. Jean Delvare <khali@linux-fr.org>,
  15. Original 2.6 port Jeff Oliver
  16. Description
  17. -----------
  18. This driver implements support for the National Semiconductor LM87.
  19. The LM87 implements up to three temperature sensors, up to two fan
  20. rotation speed sensors, up to seven voltage sensors, alarms, and some
  21. miscellaneous stuff.
  22. Temperatures are measured in degrees Celsius. Each input has a high
  23. and low alarm settings. A high limit produces an alarm when the value
  24. goes above it, and an alarm is also produced when the value goes below
  25. the low limit.
  26. Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
  27. triggered if the rotation speed has dropped below a programmable limit. Fan
  28. readings can be divided by a programmable divider (1, 2, 4 or 8) to give
  29. the readings more range or accuracy. Not all RPM values can accurately be
  30. represented, so some rounding is done. With a divider of 2, the lowest
  31. representable value is around 2600 RPM.
  32. Voltage sensors (also known as IN sensors) report their values in
  33. volts. An alarm is triggered if the voltage has crossed a programmable
  34. minimum or maximum limit. Note that minimum in this case always means
  35. 'closest to zero'; this is important for negative voltage measurements.
  36. If an alarm triggers, it will remain triggered until the hardware register
  37. is read at least once. This means that the cause for the alarm may
  38. already have disappeared! Note that in the current implementation, all
  39. hardware registers are read whenever any data is read (unless it is less
  40. than 1.0 seconds since the last update). This means that you can easily
  41. miss once-only alarms.
  42. The lm87 driver only updates its values each 1.0 seconds; reading it more
  43. often will do no harm, but will return 'old' values.
  44. Hardware Configurations
  45. -----------------------
  46. The LM87 has four pins which can serve one of two possible functions,
  47. depending on the hardware configuration.
  48. Some functions share pins, so not all functions are available at the same
  49. time. Which are depends on the hardware setup. This driver assumes that
  50. the BIOS configured the chip correctly. In that respect, it differs from
  51. the original driver (from lm_sensors for Linux 2.4), which would force the
  52. LM87 to an arbitrary, compile-time chosen mode, regardless of the actual
  53. chipset wiring.
  54. For reference, here is the list of exclusive functions:
  55. - in0+in5 (default) or temp3
  56. - fan1 (default) or in6
  57. - fan2 (default) or in7
  58. - VID lines (default) or IRQ lines (not handled by this driver)