diff options
| author | Nathan Chancellor <nathan@kernel.org> | 2025-12-11 10:50:03 +0900 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2025-12-11 09:44:10 +0100 |
| commit | e33a6abdb744e3a015dd53e997c690081a8b985d (patch) | |
| tree | 339f38e872546515b9b780692a68873882a66a68 | |
| parent | b13efb535962e26f722eada0a5b14f7bffbed29a (diff) | |
| download | tip-e33a6abdb744e3a015dd53e997c690081a8b985d.tar.gz | |
ALSA: hda: cix-ipbloq: Use modern PM ops
When building without CONFIG_PM_SLEEP, there are several warnings (or
errors with CONFIG_WERROR=y / W=e) from the cix-ipbloq driver:
sound/hda/controllers/cix-ipbloq.c:378:12: error: 'cix_ipbloq_hda_runtime_resume' defined but not used [-Werror=unused-function]
378 | static int cix_ipbloq_hda_runtime_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound/hda/controllers/cix-ipbloq.c:362:12: error: 'cix_ipbloq_hda_runtime_suspend' defined but not used [-Werror=unused-function]
362 | static int cix_ipbloq_hda_runtime_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound/hda/controllers/cix-ipbloq.c:349:12: error: 'cix_ipbloq_hda_resume' defined but not used [-Werror=unused-function]
349 | static int cix_ipbloq_hda_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~
sound/hda/controllers/cix-ipbloq.c:336:12: error: 'cix_ipbloq_hda_suspend' defined but not used [-Werror=unused-function]
336 | static int cix_ipbloq_hda_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~
When CONFIG_PM and CONFIG_PM_SLEEP are unset, SET_SYSTEM_SLEEP_PM_OPS()
and SET_RUNTIME_PM_OPS() evaluate to nothing, so these functions appear
unused to the compiler in this configuration.
Use the modern SYSTEM_SLEEP_PM_OPS and RUNTIME_PM_OPS macros to resolve
these warnings, which is what they are intended to do. Additionally,
wrap &cix_ipbloq_hda_pm in pm_ptr() to ensure the compiler can drop the
entire structure when CONFIG_PM is unset.
Fixes: d91e9bd10125 ("ALSA: hda: add CIX IPBLOQ HDA controller support")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20251211-hda-cix-ipbloq-modern-pm-ops-v1-1-c7a5580af021@kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
| -rw-r--r-- | sound/hda/controllers/cix-ipbloq.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sound/hda/controllers/cix-ipbloq.c b/sound/hda/controllers/cix-ipbloq.c index cc9153692ef53e..99f9f48e91d4b4 100644 --- a/sound/hda/controllers/cix-ipbloq.c +++ b/sound/hda/controllers/cix-ipbloq.c @@ -407,10 +407,10 @@ static int cix_ipbloq_hda_runtime_resume(struct device *dev) } static const struct dev_pm_ops cix_ipbloq_hda_pm = { - SET_SYSTEM_SLEEP_PM_OPS(cix_ipbloq_hda_suspend, - cix_ipbloq_hda_resume) - SET_RUNTIME_PM_OPS(cix_ipbloq_hda_runtime_suspend, - cix_ipbloq_hda_runtime_resume, NULL) + SYSTEM_SLEEP_PM_OPS(cix_ipbloq_hda_suspend, + cix_ipbloq_hda_resume) + RUNTIME_PM_OPS(cix_ipbloq_hda_runtime_suspend, + cix_ipbloq_hda_runtime_resume, NULL) }; static const struct of_device_id cix_ipbloq_hda_match[] = { @@ -422,7 +422,7 @@ MODULE_DEVICE_TABLE(of, cix_ipbloq_hda_match); static struct platform_driver cix_ipbloq_hda_driver = { .driver = { .name = "cix-ipbloq-hda", - .pm = &cix_ipbloq_hda_pm, + .pm = pm_ptr(&cix_ipbloq_hda_pm), .of_match_table = cix_ipbloq_hda_match, }, .probe = cix_ipbloq_hda_probe, |
