hwmon: (mlxreg-fan) Modify PWM connectivity validation
Validate PWM connectivity only for additional PWM - "pwm1" is connected on all systems, while "pwm2" - "pwm4" are optional. Validate connectivity only for optional attributes by reading of related "pwm{n}" registers - in case "pwm{n}" is not connected, register value is supposed to be 0xff. Signed-off-by: Vadim Pasternak <vadimp@nvidia.com> Link: https://lore.kernel.org/r/20210926053541.1806937-2-vadimp@nvidia.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
Родитель
1508fb2915
Коммит
b1c2423734
|
@ -488,9 +488,14 @@ static int mlxreg_fan_config(struct mlxreg_fan *fan,
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = mlxreg_pwm_connect_verify(fan, data);
|
/* Validate if more then one PWM is connected. */
|
||||||
if (err)
|
if (pwm_num) {
|
||||||
return err;
|
err = mlxreg_pwm_connect_verify(fan, data);
|
||||||
|
if (err < 0)
|
||||||
|
return err;
|
||||||
|
else if (!err)
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
fan->pwm[pwm_num].reg = data->reg;
|
fan->pwm[pwm_num].reg = data->reg;
|
||||||
fan->pwm[pwm_num].connected = true;
|
fan->pwm[pwm_num].connected = true;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче