内核驱动 lm87¶
支持的芯片
美国国家半导体 LM87
前缀: ‘lm87’
扫描地址: I2C 0x2c - 0x2e
美国模拟器件 ADM1024
前缀: ‘adm1024’
扫描地址: I2C 0x2c - 0x2e
- 作者
Frodo Looijaard <frodol@dds.nl>,
Philip Edelbrock <phil@netroedge.com>,
Mark Studebaker <mdsxyz123@yahoo.com>,
Stephen Rousset <stephen.rousset@rocketlogix.com>,
Dan Eaton <dan.eaton@rocketlogix.com>,
Jean Delvare <jdelvare@suse.de>,
原始 2.6 移植 Jeff Oliver
描述¶
此驱动程序实现了对美国国家半导体 LM87 和美国模拟器件 ADM1024 的支持。
LM87 实现了最多三个温度传感器、最多两个风扇转速传感器、最多七个电压传感器、警报以及一些其他功能。 ADM1024 完全兼容。
温度以摄氏度为单位测量。 每个输入都有一个高和低警报设置。 当值高于上限时会产生高限警报,当值低于下限时也会产生警报。
风扇转速以 RPM(每分钟转数)报告。 如果转速低于可编程限制,则会触发警报。 风扇读数可以除以可编程分频器(1、2、4 或 8),以使读数具有更大的范围或准确性。 并非所有 RPM 值都可以准确表示,因此会进行一些舍入。 当分频器为 2 时,可表示的最低值约为 2600 RPM。
电压传感器(也称为 IN 传感器)以伏特报告其值。 如果电压超过可编程的最小或最大限制,则会触发警报。 请注意,在这种情况下,最小值始终表示“最接近零”; 这对于负电压测量很重要。
如果触发警报,它将保持触发状态,直到至少读取一次硬件寄存器。 这意味着警报的原因可能已经消失! 请注意,在当前的实现中,只要读取任何数据(除非自上次更新以来不到 1.0 秒),就会读取所有硬件寄存器。 这意味着您很容易错过一次性警报。
lm87 驱动程序每 1.0 秒更新一次其值; 更频繁地读取它不会造成任何损害,但会返回“旧”值。
硬件配置¶
LM87 有四个引脚,根据硬件配置,这些引脚可以服务于两种可能的功能之一。
某些功能共享引脚,因此并非所有功能都可以同时使用。 哪些可用取决于硬件设置。 该驱动程序通常假定固件已正确配置芯片。 如果不是这种情况,平台代码必须将 I2C 客户端的 platform_data 设置为指向要写入通道寄存器的 u8 值。
- 作为参考,以下是互斥功能的列表
in0+in5(默认)或 temp3
fan1(默认)或 in6
fan2(默认)或 in7
VID 线(默认)或 IRQ 线(此驱动程序不处理)