hwmon: (dell-smm) Cleanup init code
authorArmin Wolf <W_Armin@gmx.de>
Tue, 26 Apr 2022 21:31:53 +0000 (23:31 +0200)
committerGuenter Roeck <linux@roeck-us.net>
Fri, 20 May 2022 17:57:05 +0000 (10:57 -0700)
The default values for i8k_fan_mult and i8k_fan_max
should be assigend only if the values specified as
module params or in DMI are invalid/missing.

Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20220426213154.724708-3-W_Armin@gmx.de
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/dell-smm-hwmon.c

index 202ee884de9e697b990e374f07b9465209c3ceac..f1390241461523d9ee2e75d543a4562b5fe7348d 100644 (file)
@@ -1373,8 +1373,6 @@ static int __init dell_smm_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        mutex_init(&data->i8k_mutex);
-       data->i8k_fan_mult = I8K_FAN_MULT;
-       data->i8k_fan_max = I8K_FAN_HIGH;
        platform_set_drvdata(pdev, data);
 
        if (dmi_check_system(i8k_blacklist_fan_support_dmi_table)) {
@@ -1409,7 +1407,9 @@ static int __init dell_smm_probe(struct platform_device *pdev)
                        fan_max = conf->fan_max;
        }
 
-       data->i8k_fan_max = fan_max ? : I8K_FAN_HIGH;   /* Must not be 0 */
+       /* All options must not be 0 */
+       data->i8k_fan_mult = fan_mult ? : I8K_FAN_MULT;
+       data->i8k_fan_max = fan_max ? : I8K_FAN_HIGH;
        data->i8k_pwm_mult = DIV_ROUND_UP(255, data->i8k_fan_max);
 
        fan_control = dmi_first_match(i8k_whitelist_fan_control);
@@ -1421,9 +1421,6 @@ static int __init dell_smm_probe(struct platform_device *pdev)
                dev_info(&pdev->dev, "enabling support for setting automatic/manual fan control\n");
        }
 
-       if (fan_mult)
-               data->i8k_fan_mult = fan_mult;
-
        ret = dell_smm_init_hwmon(&pdev->dev);
        if (ret)
                return ret;