diff --git a/doc/chips/adm1025 b/doc/chips/adm1025 index 9c81d218..cbcdb4fd 100644 --- a/doc/chips/adm1025 +++ b/doc/chips/adm1025 @@ -1,12 +1,133 @@ -Kernel driver `adm1021.o' +Kernel driver `adm1025.o' ========================= -Status: Complete; Alpha. +Status: Complete, known to work but not heavily tested Supported chips: * Analog Devices ADM1025 Prefix `adm1025' Addresses scanned: I2C 0x2c - 0x2e (inclusive) Datasheet: Publicly available at the Analog Devices website + * Philips NE1619 + Prefix `adm1025' + Addresses scanned: I2C 0x2c - 0x2e (inclusive) + Datasheet: Publicly available at the Philips website -Author: Chen-Yuan Wu +The NE1619 presents some differences with the original ADM1025: + * Only two possible addresses (0x2c - 0x2d), although we don't care. + * No temperature offset register, but we don't use it anyway. + * No INT mode for pin 16. We don't play with it anyway. +No separate prefix was added for the NE1619, it just wasn't worth it. + +Author: Chen-Yuan Wu and Jean Delvare + +License: GPL + + +Module Parameters +----------------- + +* force: short array (min = 1, max = 48) + List of adapter,address pairs to boldly assume to be present +* force_adm1025: short array (min = 1, max = 48) + List of adapter,address pairs which are unquestionably assumed to contain + a `adm1025' chip +* probe: short array (min = 1, max = 48) + List of adapter,address pairs to scan additionally +* probe_range: short array (min = 1, max = 48) + List of adapter,start-addr,end-addr triples to scan additionally +* ignore: short array (min = 1, max = 48) + List of adapter,address pairs not to scan +* ignore_range: short array (min = 1, max = 48) + List of adapter,start-addr,end-addr triples not to scan + + +Description +----------- + +(This is from Analog Devices.) The ADM1025 is a complete system hardware +monitor for microprocessor-based systems, providing measurement and limit +comparison of various system parameters. Five voltage measurement inputs +are provided, for monitoring +2.5V, +3.3V, +5V and +12V power supplies and +the processor core voltage. The ADM1025 can monitor a sixth power-supply +voltage by measuring its own VCC. One input (two pins) is dedicated to a +remote temperature-sensing diode and an on-chip temperature sensor allows +ambient temperature to be monitored. + +One specificity of this chip is that the pin 11 can be hardwired in two +different manners. It can act as the +12V power-supply voltage analog +input, or as the a fifth digital entry for the VID reading (bit 4). It's +kind of strange since both are useful, and the reason for designing the +chip that way is obscure at least to me. The bit 5 of the configuration +register can be used to define how the chip is hardwired. Please note +that it is not a choice you have to make as the user. The choice was +already made by your motherboard's maker. If the configuration bit isn't +set properly, you'll have a wrong +12V reading or a wrong VID reading. +The way the driver handles that is to preserve this bit through the +initialization process, assuming that the BIOS set it up properly +beforehand. If it turns out not to be true in some cases, we'll provide +a module parameter to force modes. + + +Chip Features +------------- + +Chip 'adm1025' + +LABEL LABEL CLASS COMPUTE CLASS MODE MAGN +in0 - - R- 2 +in1 - - R- 2 +in2 - - R- 2 +in3 - - R- 2 +in4 - - R- 2 +in5 - - R- 2 +in0_min in0 in0 RW 2 +in1_min in1 in1 RW 2 +in2_min in2 in2 RW 2 +in3_min in3 in3 RW 2 +in4_min in4 in4 RW 2 +in5_min in5 in5 RW 2 +in0_max in0 in0 RW 2 +in1_max in1 in1 RW 2 +in2_max in2 in2 RW 2 +in3_max in3 in3 RW 2 +in4_max in4 in4 RW 2 +in5_max in5 in5 RW 2 +temp1 - - R- 1 +temp1_low temp1 temp1 RW 1 +temp1_high temp1 temp1 RW 1 +temp2 - - R- 1 +temp2_low temp2 temp2 RW 1 +temp2_high temp2 temp2 RW 1 +vid - - R- 3 +vrm - - RW 1 +alarms - - R- 0 + +LABEL FEATURE SYMBOL SYSCTL FILE:N +in0 SENSORS_ADM1025_IN0 in0:3 +in1 SENSORS_ADM1025_IN1 in1:3 +in2 SENSORS_ADM1025_IN2 in2:3 +in3 SENSORS_ADM1025_IN3 in3:3 +in4 SENSORS_ADM1025_IN4 in4:3 +in5 SENSORS_ADM1025_IN5 in5:3 +in0_min SENSORS_ADM1025_IN0_MIN in0:1 +in1_min SENSORS_ADM1025_IN1_MIN in1:1 +in2_min SENSORS_ADM1025_IN2_MIN in2:1 +in3_min SENSORS_ADM1025_IN3_MIN in3:1 +in4_min SENSORS_ADM1025_IN4_MIN in4:1 +in5_min SENSORS_ADM1025_IN5_MIN in5:1 +in0_max SENSORS_ADM1025_IN0_MAX in0:2 +in1_max SENSORS_ADM1025_IN1_MAX in1:2 +in2_max SENSORS_ADM1025_IN2_MAX in2:2 +in3_max SENSORS_ADM1025_IN3_MAX in3:2 +in4_max SENSORS_ADM1025_IN4_MAX in4:2 +in5_max SENSORS_ADM1025_IN5_MAX in5:2 +temp1 SENSORS_ADM1025_TEMP1 temp1:3 +temp1_low SENSORS_ADM1025_TEMP1_LOW temp1:2 +temp1_high SENSORS_ADM1025_TEMP1_HIGH temp1:1 +temp2 SENSORS_ADM1025_TEMP2 temp2:3 +temp2_low SENSORS_ADM1025_TEMP2_LOW temp2:2 +temp2_high SENSORS_ADM1025_TEMP2_HIGH temp2:1 +vid SENSORS_ADM1025_VID vid:1 +vrm SENSORS_ADM1025_VRM vrm:1 +alarms SENSORS_ADM1025_ALARMS alarms:1