内核驱动 lm63

支持的芯片

作者:Jean Delvare <jdelvare@suse.de>

感谢泰安(Tyan)公司,特别是 Alex Buckingham 为此驱动程序设置了对其 S4882 测试平台的远程访问。

描述

LM63 是一款集成了风扇监控和控制功能的数字温度传感器。

LM63 本质上是 LM86 增加了风扇速度监控和控制功能。但它缺少 LM86 的一些功能:

  • 本地温度没有下限。

  • 本地温度没有临界限制。

  • 远程温度的临界限制只能更改一次。我们将认为该临界限制是只读的。

数据手册并未非常清楚地说明转速计读数是什么。

国家半导体的解释是:读取值的两个低位必须被屏蔽掉。该值仍然是 16 位宽。

所有温度值均以摄氏度给出。本地温度的分辨率为 1.0 度,远程温度为 0.125 度。

风扇速度通过转速计测量。与大多数将值存储在 8 位寄存器中并具有可选择的时钟分频器以确保结果适合寄存器的芯片不同,LM63 使用 16 位值来测量风扇速度。它理论上可以测量低至 83 RPM 的风扇速度。

请注意,用于风扇监控的引脚与警报输出功能共享。根据电路板设计者希望如何使用该芯片,风扇速度监控可能无法实现。正确的芯片配置交由 BIOS 负责,驱动程序将盲目信任它。只有原始的 LM63 受此限制,LM64 和 LM96163 具有独立的风扇监控和警报输出引脚。在 LM64 上,监控始终启用;在 LM96163 上,可以禁用它。

PWM 输出可用于控制风扇速度。LM63 具有两种 PWM 模式:手动和自动。自动模式尚未完全实现(您无法定义自定义的 PWM/温度曲线),也不支持模式更改。

lm63 驱动程序更新值的频率不会超过通过 update_interval sysfs 属性配置的频率;更频繁地读取它们不会造成损害,但会返回“旧”值。自动风扇控制查找表(属性 pwm1_auto_*)中的值有其独立的 5 秒生命周期。

LM64 实际上是带有 GPIO 线的 LM63。该驱动程序目前不支持这些 GPIO 线。

LM96163 是 LM63 的增强版,具有更高的温度精度和更好的 PWM 分辨率。对于 LM96163,外部温度传感器类型可配置为 CPU 内嵌二极管(1)或 3904 晶体管(2)。