⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adm1026

📁 linux 内核源代码
💻
字号:
Kernel driver adm1026=====================Supported chips:  * Analog Devices ADM1026    Prefix: 'adm1026'    Addresses scanned: I2C 0x2c, 0x2d, 0x2e    Datasheet: Publicly available at the Analog Devices website               http://www.analog.com/en/prod/0,,766_825_ADM1026,00.htmlAuthors:        Philip Pokorny <ppokorny@penguincomputing.com> for Penguin Computing        Justin Thiessen <jthiessen@penguincomputing.com>Module Parameters-----------------* gpio_input: int array (min = 1, max = 17)  List of GPIO pins (0-16) to program as inputs* gpio_output: int array (min = 1, max = 17)  List of GPIO pins (0-16) to program as outputs* gpio_inverted: int array (min = 1, max = 17)  List of GPIO pins (0-16) to program as inverted* gpio_normal: int array (min = 1, max = 17)  List of GPIO pins (0-16) to program as normal/non-inverted* gpio_fan: int array (min = 1, max = 8)  List of GPIO pins (0-7) to program as fan tachsDescription-----------This driver implements support for the Analog Devices ADM1026. AnalogDevices calls it a "complete thermal system management controller."The ADM1026 implements three (3) temperature sensors, 17 voltage sensors,16 general purpose digital I/O lines, eight (8) fan speed sensors (8-bit),an analog output and a PWM output along with limit, alarm and mask bits forall of the above. There is even 8k bytes of EEPROM memory on chip.Temperatures are measured in degrees Celsius. There are two externalsensor inputs and one internal sensor. Each sensor has a high and lowlimit. If the limit is exceeded, an interrupt (#SMBALERT) can begenerated. The interrupts can be masked. In addition, there are over-templimits for each sensor. If this limit is exceeded, the #THERM output willbe asserted. The current temperature and limits have a resolution of 1degree.Fan rotation speeds are reported in RPM (rotations per minute) but measuredin counts of a 22.5kHz internal clock. Each fan has a high limit whichcorresponds to a minimum fan speed. If the limit is exceeded, an interruptcan be generated. Each fan can be programmed to divide the reference clockby 1, 2, 4 or 8. Not all RPM values can accurately be represented, so somerounding is done. With a divider of 8, the slowest measurable speed of atwo pulse per revolution fan is 661 RPM.There are 17 voltage sensors. An alarm is triggered if the voltage hascrossed a programmable minimum or maximum limit. Note that minimum in thiscase always means 'closest to zero'; this is important for negative voltagemeasurements. Several inputs have integrated attenuators so they can measurehigher voltages directly. 3.3V, 5V, 12V, -12V and battery voltage all havededicated inputs. There are several inputs scaled to 0-3V full-scale rangefor SCSI terminator power. The remaining inputs are not scaled and havea 0-2.5V full-scale range. A 2.5V or 1.82V reference voltage is providedfor negative voltage measurements.If an alarm triggers, it will remain triggered until the hardware registeris read at least once. This means that the cause for the alarm may alreadyhave disappeared! Note that in the current implementation, all hardwareregisters are read whenever any data is read (unless it is less than 2.0seconds since the last update). This means that you can easily missonce-only alarms.The ADM1026 measures continuously. Analog inputs are measured about 4times a second. Fan speed measurement time depends on fan speed anddivisor. It can take as long as 1.5 seconds to measure all fan speeds.The ADM1026 has the ability to automatically control fan speed based on thetemperature sensor inputs. Both the PWM output and the DAC output can beused to control fan speed. Usually only one of these two outputs will beused. Write the minimum PWM or DAC value to the appropriate controlregister. Then set the low temperature limit in the tmin values for eachtemperature sensor. The range of control is fixed at 20 °C, and thelargest difference between current and tmin of the temperature sensors setsthe control output. See the datasheet for several example circuits forcontrolling fan speed with the PWM and DAC outputs. The fan speed sensorsdo not have PWM compensation, so it is probably best to control the fanvoltage from the power lead rather than on the ground lead.The datasheet shows an example application with VID signals attached toGPIO lines. Unfortunately, the chip may not be connected to the VID linesin this way. The driver assumes that the chips *is* connected this way toget a VID voltage.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -