mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 21:24:08 +08:00
hwmon: (it87) Enhance validation for fan4 and fan5
Several of the chips supported by this driver have a configuration register to enable fan4 and fan5. Use those registers to determine if fan4 and fan5 tachometers are supported. Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
f1bbe61860
commit
a0df926d33
@ -2415,6 +2415,29 @@ static int __init it87_find(int sioaddr, unsigned short *address,
|
||||
|
||||
superio_select(sioaddr, GPIO);
|
||||
|
||||
/* Check for fan4, fan5 */
|
||||
if (has_five_fans(config)) {
|
||||
reg = superio_inb(sioaddr, IT87_SIO_GPIO2_REG);
|
||||
switch (sio_data->type) {
|
||||
case it8718:
|
||||
if (reg & BIT(5))
|
||||
sio_data->skip_fan |= BIT(3);
|
||||
if (reg & BIT(4))
|
||||
sio_data->skip_fan |= BIT(4);
|
||||
break;
|
||||
case it8720:
|
||||
case it8721:
|
||||
case it8728:
|
||||
if (!(reg & BIT(5)))
|
||||
sio_data->skip_fan |= BIT(3);
|
||||
if (!(reg & BIT(4)))
|
||||
sio_data->skip_fan |= BIT(4);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
reg = superio_inb(sioaddr, IT87_SIO_GPIO3_REG);
|
||||
if (!sio_data->skip_vid) {
|
||||
/* We need at least 4 VID pins */
|
||||
|
Loading…
Reference in New Issue
Block a user