thinkpad-acpi: support the second fan on the X61
commit23e2bebd2fea2ee78a41d950c87917cf31294426
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Fri, 4 Dec 2009 11:12:53 +0000 (4 09:12 -0200)
committerHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Fri, 4 Dec 2009 11:12:53 +0000 (4 09:12 -0200)
tree2982edc591587c0779cd7c5eb370efd637499444
parent4d37b887888d7aba6f415234bb440df2ed209641
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