From: Nathan Chancellor Date: Thu, 11 Dec 2025 01:50:03 +0000 (+0900) Subject: ALSA: hda: cix-ipbloq: Use modern PM ops X-Git-Tag: v6.19-rc1~20^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e33a6abdb744e3a015dd53e997c690081a8b985d;p=thirdparty%2Flinux.git 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 Link: https://patch.msgid.link/20251211-hda-cix-ipbloq-modern-pm-ops-v1-1-c7a5580af021@kernel.org Signed-off-by: Takashi Iwai --- diff --git a/sound/hda/controllers/cix-ipbloq.c b/sound/hda/controllers/cix-ipbloq.c index cc9153692ef5..99f9f48e91d4 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,