Unverified Commit 01661bb9 authored by Fabio Estevam's avatar Fabio Estevam Committed by Mark Brown
Browse files

ASoC: fsl_spdif: Switch to RUNTIME/SYSTEM_SLEEP_PM_OPS()



Replace SET_RUNTIME_PM_OPS()/SET SYSTEM_SLEEP_PM_OPS() with their modern
RUNTIME_PM_OPS() and SYSTEM_SLEEP_PM_OPS() alternatives.

The combined usage of pm_ptr() and RUNTIME_PM_OPS/SYSTEM_SLEEP_PM_OPS()
allows the compiler to evaluate if the runtime suspend/resume() functions
are used at build time or are simply dead code.

This allows removing the CONFIG_PM ifdefery from the runtime
suspend/resume() functions.

Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
Link: https://patch.msgid.link/20240808184944.267686-4-festevam@gmail.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent bbc0798c
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -1667,7 +1667,6 @@ static void fsl_spdif_remove(struct platform_device *pdev)
	pm_runtime_disable(&pdev->dev);
}

#ifdef CONFIG_PM
static int fsl_spdif_runtime_suspend(struct device *dev)
{
	struct fsl_spdif_priv *spdif_priv = dev_get_drvdata(dev);
@@ -1739,12 +1738,10 @@ static int fsl_spdif_runtime_resume(struct device *dev)

	return ret;
}
#endif /* CONFIG_PM */

static const struct dev_pm_ops fsl_spdif_pm = {
	SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
				pm_runtime_force_resume)
	SET_RUNTIME_PM_OPS(fsl_spdif_runtime_suspend, fsl_spdif_runtime_resume,
	SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume)
	RUNTIME_PM_OPS(fsl_spdif_runtime_suspend, fsl_spdif_runtime_resume,
		       NULL)
};

@@ -1763,7 +1760,7 @@ static struct platform_driver fsl_spdif_driver = {
	.driver = {
		.name = "fsl-spdif-dai",
		.of_match_table = fsl_spdif_dt_ids,
		.pm = &fsl_spdif_pm,
		.pm = pm_ptr(&fsl_spdif_pm),
	},
	.probe = fsl_spdif_probe,
	.remove_new = fsl_spdif_remove,