Commit f2173fa2 authored by Christian Schneider's avatar Christian Schneider Committed by Guenter Roeck
Browse files

hwmon: (gpio-fan) move fan_alarm_init after devm_hwmon_device_register_with_groups



This makes it possible to use the hwmon_dev in fan_alarm_notify(). Otherwise
it would be possible, that a interupt arrives and fan_alarm_notify() is
executed, before hwmon_dev is initialized.

Signed-off-by: default avatarChristian Schneider <cschneider@radiodata.biz>
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 7a1d220c
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -510,13 +510,6 @@ static int gpio_fan_probe(struct platform_device *pdev)
	platform_set_drvdata(pdev, fan_data);
	mutex_init(&fan_data->lock);

	/* Configure alarm GPIO if available. */
	if (fan_data->alarm_gpio) {
		err = fan_alarm_init(fan_data);
		if (err)
			return err;
	}

	/* Configure control GPIOs if available. */
	if (fan_data->gpios && fan_data->num_gpios > 0) {
		if (!fan_data->speed || fan_data->num_speed <= 1)
@@ -537,6 +530,13 @@ static int gpio_fan_probe(struct platform_device *pdev)
	if (IS_ERR(fan_data->hwmon_dev))
		return PTR_ERR(fan_data->hwmon_dev);

	/* Configure alarm GPIO if available. */
	if (fan_data->alarm_gpio) {
		err = fan_alarm_init(fan_data);
		if (err)
			return err;
	}

	/* Optional cooling device register for Device tree platforms */
	fan_data->cdev = devm_thermal_of_cooling_device_register(dev, np,
				"gpio-fan", fan_data, &gpio_fan_cool_ops);