thinkpad-acpi: support the second fan on the X61
commit526f8cda6f15215c9786ebb15a07e6bbe1bbb2c5
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Sun, 5 Jul 2009 00:35:29 +0000 (4 21:35 -0300)
committerHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Sun, 5 Jul 2009 00:35:29 +0000 (4 21:35 -0300)
treeaeea08cd3eb90a25ed6b9fc661eda92b1953f6f0
parent348f8c894f402887bc7395a90c0e8413b5921a4c
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