Commit 5672f398 authored by Jonathan Cameron's avatar Jonathan Cameron
Browse files

iio: light: tsl2591: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr()



Using these new macros allows removal of unused pm_ops structure and
functions if !CONFIG_PM without the need to mark the functions
__maybe_unused.

Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Joe Sandom <joe.g.sandom@gmail.com>
Reviewed-by: default avatarPaul Cercueil <paul@crapouillou.net>
Link: https://lore.kernel.org/r/20220621202719.13644-32-jic23@kernel.org
parent f541541a
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -1019,7 +1019,7 @@ static const struct iio_info tsl2591_info_no_irq = {
	.read_avail = tsl2591_read_available,
};

static int __maybe_unused tsl2591_suspend(struct device *dev)
static int tsl2591_suspend(struct device *dev)
{
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct tsl2591_chip *chip = iio_priv(indio_dev);
@@ -1032,7 +1032,7 @@ static int __maybe_unused tsl2591_suspend(struct device *dev)
	return ret;
}

static int __maybe_unused tsl2591_resume(struct device *dev)
static int tsl2591_resume(struct device *dev)
{
	int power_state = TSL2591_PWR_ON | TSL2591_ENABLE_ALS;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
@@ -1049,10 +1049,8 @@ static int __maybe_unused tsl2591_resume(struct device *dev)
	return ret;
}

static const struct dev_pm_ops tsl2591_pm_ops = {
	SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume)
	SET_RUNTIME_PM_OPS(tsl2591_suspend, tsl2591_resume, NULL)
};
static DEFINE_RUNTIME_DEV_PM_OPS(tsl2591_pm_ops, tsl2591_suspend,
				 tsl2591_resume, NULL);

static irqreturn_t tsl2591_event_handler(int irq, void *private)
{
@@ -1213,7 +1211,7 @@ MODULE_DEVICE_TABLE(of, tsl2591_of_match);
static struct i2c_driver tsl2591_driver = {
	.driver = {
		.name = "tsl2591",
		.pm = &tsl2591_pm_ops,
		.pm = pm_ptr(&tsl2591_pm_ops),
		.of_match_table = tsl2591_of_match,
	},
	.probe_new = tsl2591_probe