ADT7467C(4)

NAME
adt7467c - Analog Devices ADT7467 and ADM1030 hardware monitors and fan controllers

SYNOPSIS
adt7467c0 at ki2c?

DESCRIPTION
The adt7467c driver provides support for the Analog Devices ADT7467 and ADM1030 hardware monitor chips to be used with the envsys(4) API.

The ADT7467 supports five sensors:
Sensor | Units | Typical Use
temp0 | uK | chip temperature
temp1 | uK | CPU temperature
temp2 | uK | GPU temperature
voltage0 | uV DC | CPU Vcore
fan0 | RPM | Chassis Fan

The ADM1030 supports three sensors:
Sensor | Units | Typical Use
temp0 | uK | chip temperature
temp1 | uK | CPU temperature
fan0 | RPM | Chassis Fan

Due to hardware limitations, fresh sensor data is only available every 2 seconds.

Both controllers support fan speed control based on temperature thresholds - the fan will spin up when any thermal sensor reaches its configured threshold, it will go faster with higher temperature and slow down when temperature sinks. The fan will be turned off when the sensor(s) that triggered it report a temperature about 5C below threshold. All thresholds are configurable via sysctl:

    machdep.adt7467c0.temp0 = 56
    machdep.adt7467c0.temp1 = 85
    machdep.adt7467c0.temp2 = 76

Every threshold corresponds to a temperature sensor, so with the ADM1030 there will be only two of them. Both chips use degree Celsius to specify temperature thresholds so that's what the sysctl interface uses too. Configuring a threshold below room temperature will essentially turn on the fan permanently, values above 85C will be rejected.

HISTORY
The adt7467c device appeared in NetBSD 4.0.

BUGS
The drivers have been tested with iBooks only so far. The ADT7467 supports more fan speed sensors but these are unused in iBooks.