Commit 6b9c1608 authored by Jonathan Cameron's avatar Jonathan Cameron Committed by Dmitry Torokhov
Browse files

Input: applespi - use pm_sleep_ptr() and SYSTEM_SLEEP_PM_OPS()



SET_SYSTEM_SLEEP_PM_OPS() is deprecated as it requires explicit protection
against unused function warnings.  The new combination of pm_sleep_ptr()
and SYSTEM_SLEEP_PM_OPS() allows the compiler to see the functions,
thus suppressing the warning, but still allowing the unused code to be
removed. Thus also drop the __maybe_unused markings.

In this case we also have a .poweroff_late() callback. Whilst not
strictly necessary, to future proof against relaxation of the protection
of the main driver.pm = pm_sleep_ptr() protect this pointer with
pm_sleep_ptr() as would be done if the LATE_SYSTEM_SLEEP_PM_OPS()
macro were used to set it.

Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/20230114171620.42891-13-jic23@kernel.org


Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent c3c2f2bc
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -1876,7 +1876,7 @@ static int applespi_poweroff_late(struct device *dev)
	return 0;
}

static int __maybe_unused applespi_suspend(struct device *dev)
static int applespi_suspend(struct device *dev)
{
	struct spi_device *spi = to_spi_device(dev);
	struct applespi_data *applespi = spi_get_drvdata(spi);
@@ -1903,7 +1903,7 @@ static int __maybe_unused applespi_suspend(struct device *dev)
	return 0;
}

static int __maybe_unused applespi_resume(struct device *dev)
static int applespi_resume(struct device *dev)
{
	struct spi_device *spi = to_spi_device(dev);
	struct applespi_data *applespi = spi_get_drvdata(spi);
@@ -1947,15 +1947,15 @@ static const struct acpi_device_id applespi_acpi_match[] = {
MODULE_DEVICE_TABLE(acpi, applespi_acpi_match);

static const struct dev_pm_ops applespi_pm_ops = {
	SET_SYSTEM_SLEEP_PM_OPS(applespi_suspend, applespi_resume)
	.poweroff_late	= applespi_poweroff_late,
	SYSTEM_SLEEP_PM_OPS(applespi_suspend, applespi_resume)
	.poweroff_late	= pm_sleep_ptr(applespi_poweroff_late),
};

static struct spi_driver applespi_driver = {
	.driver		= {
		.name			= "applespi",
		.acpi_match_table	= applespi_acpi_match,
		.pm			= &applespi_pm_ops,
		.pm			= pm_sleep_ptr(&applespi_pm_ops),
	},
	.probe		= applespi_probe,
	.remove		= applespi_remove,