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 <jani.nikula@intel.com>
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Link: https://patch.msgid.link/20251030202836.1815680-7-jouni.hogander@intel.com
This commit is contained in:
Jouni Högander
2025-10-30 22:28:36 +02:00
parent 98c7fc038c
commit 44fde50912
2 changed files with 1 additions and 65 deletions

View File

@@ -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 \

View File

@@ -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;