hwmon: (gpio-fan) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
These newer PM macros allow the compiler to see what code it can remove if !CONFIG_PM_SLEEP. This allows the removal of messy #ifdef barriers whilst achieving the same result. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20220925172759.3573439-6-jic23@kernel.org [groeck: Drop #ifdef from struct gpio_fan_data] Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
29805956ee
commit
5e866400e9
|
@ -37,9 +37,7 @@ struct gpio_fan_data {
|
||||||
int num_speed;
|
int num_speed;
|
||||||
struct gpio_fan_speed *speed;
|
struct gpio_fan_speed *speed;
|
||||||
int speed_index;
|
int speed_index;
|
||||||
#ifdef CONFIG_PM_SLEEP
|
|
||||||
int resume_speed;
|
int resume_speed;
|
||||||
#endif
|
|
||||||
bool pwm_enable;
|
bool pwm_enable;
|
||||||
struct gpio_desc *alarm_gpio;
|
struct gpio_desc *alarm_gpio;
|
||||||
struct work_struct alarm_work;
|
struct work_struct alarm_work;
|
||||||
|
@ -557,7 +555,6 @@ static void gpio_fan_shutdown(struct platform_device *pdev)
|
||||||
set_fan_speed(fan_data, 0);
|
set_fan_speed(fan_data, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_PM_SLEEP
|
|
||||||
static int gpio_fan_suspend(struct device *dev)
|
static int gpio_fan_suspend(struct device *dev)
|
||||||
{
|
{
|
||||||
struct gpio_fan_data *fan_data = dev_get_drvdata(dev);
|
struct gpio_fan_data *fan_data = dev_get_drvdata(dev);
|
||||||
|
@ -580,18 +577,14 @@ static int gpio_fan_resume(struct device *dev)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static SIMPLE_DEV_PM_OPS(gpio_fan_pm, gpio_fan_suspend, gpio_fan_resume);
|
static DEFINE_SIMPLE_DEV_PM_OPS(gpio_fan_pm, gpio_fan_suspend, gpio_fan_resume);
|
||||||
#define GPIO_FAN_PM (&gpio_fan_pm)
|
|
||||||
#else
|
|
||||||
#define GPIO_FAN_PM NULL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static struct platform_driver gpio_fan_driver = {
|
static struct platform_driver gpio_fan_driver = {
|
||||||
.probe = gpio_fan_probe,
|
.probe = gpio_fan_probe,
|
||||||
.shutdown = gpio_fan_shutdown,
|
.shutdown = gpio_fan_shutdown,
|
||||||
.driver = {
|
.driver = {
|
||||||
.name = "gpio-fan",
|
.name = "gpio-fan",
|
||||||
.pm = GPIO_FAN_PM,
|
.pm = pm_sleep_ptr(&gpio_fan_pm),
|
||||||
.of_match_table = of_match_ptr(of_gpio_fan_match),
|
.of_match_table = of_match_ptr(of_gpio_fan_match),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue