[PATCH v2] drm/vc4: Unselect PM
Maxime Ripard
maxime at cerno.tech
Fri Sep 24 08:23:34 PDT 2021
It turns out we can't select PM when allowing the compilation for
COMPILE_TEST. Indeed, PM might not be defined at all, or come with extra
requirements we can't meet.
This select was initially introduced since we need to call the
vc4_hdmi_runtime_resume() at probe time to make sure our device is
properly powered at bind time, no matter whether PM is there or not, and
we needed to make sure we didn't have a defined but not used warning for
vc4_hdmi_runtime_suspend().
This will still happen on platforms that don't define PM though, since
SET_RUNTIME_PM_OPS will then be a nop. In order to fix both issues,
let's remove the select, and add a __maybe_unused attribute to
vc4_hdmi_runtime_resume().
Reported-by: Randy Dunlap <rdunlap at infradead.org>
Signed-off-by: Maxime Ripard <maxime at cerno.tech>
---
I'm not sure how to merge this one, since this commit has been reverted
in Linus tree, and un-reverted in linux-next. Should we wait a bit until
the reworked version of the original commit has been merged again?
Maxime
Changes from v1:
- remove select
- add __maybe_unused to vc4_hdmi_runtime_resume
- reword the commit log
---
drivers/gpu/drm/vc4/Kconfig | 1 -
drivers/gpu/drm/vc4/vc4_hdmi.c | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/vc4/Kconfig b/drivers/gpu/drm/vc4/Kconfig
index 52a1c309cb4a..345a5570a3da 100644
--- a/drivers/gpu/drm/vc4/Kconfig
+++ b/drivers/gpu/drm/vc4/Kconfig
@@ -9,7 +9,6 @@ config DRM_VC4
select DRM_KMS_CMA_HELPER
select DRM_GEM_CMA_HELPER
select DRM_PANEL_BRIDGE
- select PM
select SND_PCM
select SND_PCM_ELD
select SND_SOC_GENERIC_DMAENGINE_PCM
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
index 500cdd56b335..1f2690ed8542 100644
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -2122,7 +2122,7 @@ static int vc5_hdmi_init_resources(struct vc4_hdmi *vc4_hdmi)
return 0;
}
-static int vc4_hdmi_runtime_suspend(struct device *dev)
+static int __maybe_unused vc4_hdmi_runtime_suspend(struct device *dev)
{
struct vc4_hdmi *vc4_hdmi = dev_get_drvdata(dev);
--
2.31.1
More information about the linux-arm-kernel
mailing list