thinkpad-acpi: support the second fan on the X61marker
commit92b12d610654a2ad748a4ad643b498a1b052de06
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Sun, 5 Jul 2009 00:47:04 +0000 (4 21:47 -0300)
committerHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Sun, 5 Jul 2009 00:47:04 +0000 (4 21:47 -0300)
treeaeea08cd3eb90a25ed6b9fc661eda92b1953f6f0
parent66eb29d83b0c392687295d63eceec956574883a8
thinkpad-acpi: support the second fan on the X61

Support reading the tachometer of the auxiliary fan of a X60/X61.

It was found out by sheer luck, that bit 0 of EC register 0x31
(formely HBRV) selects which fan is active for tachometer readings
through EC 0x84/0x085: 0 for fan1, 1 for fan2.

Many thanks to Christoph Klünter, to Whoopie, and to weasel, who
helped confirm that behaviour.

Fan control through EC HFSP applies to both fans equally, regardless
of the state of bit 0 of EC 0x31.  That matches the way the DSDT uses
HFSP.

In order to better support the secondary fan, export a second
tachometer over hwmon, and add defensive measures to make sure we are
reading the correct tachometer.

Support for the second fan is whitelist-based, as I have not found
anything obvious to look for in the DSDT to detect the presence of
the second fan.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Documentation/laptops/thinkpad-acpi.txt
drivers/platform/x86/thinkpad_acpi.c