From: Jouni Högander Date: Thu, 30 Oct 2025 20:28:36 +0000 (+0200) Subject: drm/xe/display: Use display parent interface for xe runtime pm X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=44fde50912b81e924d885ddfd14247385985716e;p=thirdparty%2Fkernel%2Flinux.git drm/xe/display: Use display parent interface for xe runtime pm Start using display parent interface for xe runtime pm. v2: keep xe_display_rpm.c Reviewed-by: Jani Nikula Signed-off-by: Jouni Högander Link: https://patch.msgid.link/20251030202836.1815680-7-jouni.hogander@intel.com --- diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile index b99e293161a1e..60d9261bfd264 100644 --- a/drivers/gpu/drm/xe/Makefile +++ b/drivers/gpu/drm/xe/Makefile @@ -252,6 +252,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \ i915-display/intel_display_power.o \ i915-display/intel_display_power_map.o \ i915-display/intel_display_power_well.o \ + i915-display/intel_display_rpm.o \ i915-display/intel_display_trace.o \ i915-display/intel_display_utils.o \ i915-display/intel_display_wa.o \ diff --git a/drivers/gpu/drm/xe/display/xe_display_rpm.c b/drivers/gpu/drm/xe/display/xe_display_rpm.c index cae4e2fd36c70..340f658848121 100644 --- a/drivers/gpu/drm/xe/display/xe_display_rpm.c +++ b/drivers/gpu/drm/xe/display/xe_display_rpm.c @@ -9,71 +9,6 @@ #include "xe_device_types.h" #include "xe_pm.h" -static struct xe_device *display_to_xe(struct intel_display *display) -{ - return to_xe_device(display->drm); -} - -struct ref_tracker *intel_display_rpm_get_raw(struct intel_display *display) -{ - return intel_display_rpm_get(display); -} - -void intel_display_rpm_put_raw(struct intel_display *display, struct ref_tracker *wakeref) -{ - intel_display_rpm_put(display, wakeref); -} - -struct ref_tracker *intel_display_rpm_get(struct intel_display *display) -{ - return xe_pm_runtime_resume_and_get(display_to_xe(display)) ? INTEL_WAKEREF_DEF : NULL; -} - -struct ref_tracker *intel_display_rpm_get_if_in_use(struct intel_display *display) -{ - return xe_pm_runtime_get_if_in_use(display_to_xe(display)) ? INTEL_WAKEREF_DEF : NULL; -} - -struct ref_tracker *intel_display_rpm_get_noresume(struct intel_display *display) -{ - xe_pm_runtime_get_noresume(display_to_xe(display)); - - return INTEL_WAKEREF_DEF; -} - -void intel_display_rpm_put(struct intel_display *display, struct ref_tracker *wakeref) -{ - if (wakeref) - xe_pm_runtime_put(display_to_xe(display)); -} - -void intel_display_rpm_put_unchecked(struct intel_display *display) -{ - xe_pm_runtime_put(display_to_xe(display)); -} - -bool intel_display_rpm_suspended(struct intel_display *display) -{ - struct xe_device *xe = display_to_xe(display); - - return pm_runtime_suspended(xe->drm.dev); -} - -void assert_display_rpm_held(struct intel_display *display) -{ - /* FIXME */ -} - -void intel_display_rpm_assert_block(struct intel_display *display) -{ - /* FIXME */ -} - -void intel_display_rpm_assert_unblock(struct intel_display *display) -{ - /* FIXME */ -} - static struct ref_tracker *xe_display_rpm_get(const struct drm_device *drm) { return xe_pm_runtime_resume_and_get(to_xe_device(drm)) ? INTEL_WAKEREF_DEF : NULL;