|
@@ -340,8 +340,6 @@ static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val)
|
|
fanmode |= (1 << F75387_FAN_MANU_MODE(nr));
|
|
fanmode |= (1 << F75387_FAN_MANU_MODE(nr));
|
|
fanmode |= (1 << F75387_FAN_DUTY_MODE(nr));
|
|
fanmode |= (1 << F75387_FAN_DUTY_MODE(nr));
|
|
data->pwm[nr] = 255;
|
|
data->pwm[nr] = 255;
|
|
- f75375_write8(client, F75375_REG_FAN_PWM_DUTY(nr),
|
|
|
|
- data->pwm[nr]);
|
|
|
|
break;
|
|
break;
|
|
case 1: /* PWM */
|
|
case 1: /* PWM */
|
|
fanmode |= (1 << F75387_FAN_MANU_MODE(nr));
|
|
fanmode |= (1 << F75387_FAN_MANU_MODE(nr));
|
|
@@ -361,8 +359,6 @@ static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val)
|
|
case 0: /* full speed */
|
|
case 0: /* full speed */
|
|
fanmode |= (3 << FAN_CTRL_MODE(nr));
|
|
fanmode |= (3 << FAN_CTRL_MODE(nr));
|
|
data->pwm[nr] = 255;
|
|
data->pwm[nr] = 255;
|
|
- f75375_write8(client, F75375_REG_FAN_PWM_DUTY(nr),
|
|
|
|
- data->pwm[nr]);
|
|
|
|
break;
|
|
break;
|
|
case 1: /* PWM */
|
|
case 1: /* PWM */
|
|
fanmode |= (3 << FAN_CTRL_MODE(nr));
|
|
fanmode |= (3 << FAN_CTRL_MODE(nr));
|
|
@@ -377,6 +373,9 @@ static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val)
|
|
|
|
|
|
f75375_write8(client, F75375_REG_FAN_TIMER, fanmode);
|
|
f75375_write8(client, F75375_REG_FAN_TIMER, fanmode);
|
|
data->pwm_enable[nr] = val;
|
|
data->pwm_enable[nr] = val;
|
|
|
|
+ if (val == 0)
|
|
|
|
+ f75375_write8(client, F75375_REG_FAN_PWM_DUTY(nr),
|
|
|
|
+ data->pwm[nr]);
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|