drm/i915/rps: convert intel_display_rps.[ch] to struct intel_display
authorJani Nikula <jani.nikula@intel.com>
Tue, 25 Feb 2025 16:49:11 +0000 (18:49 +0200)
committerJani Nikula <jani.nikula@intel.com>
Thu, 27 Feb 2025 10:31:06 +0000 (12:31 +0200)
Going forward, struct intel_display is the main display device data
pointer. Convert as much as possible of intel_display_rps.[ch] to struct
intel_display.

Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/c81156007bffbf0a1b1e6831afaf8fb05db546bc.1740502116.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_atomic_plane.c
drivers/gpu/drm/i915/display/intel_display_rps.c
drivers/gpu/drm/i915/display/intel_display_rps.h
drivers/gpu/drm/xe/display/xe_display_rps.c

index 124cd9ddba0b96657a8166e613b93003e77e133c..05dcfa3bea7303cc1db86c2b1889a87d6fc3bb32 100644 (file)
@@ -1119,11 +1119,11 @@ intel_prepare_plane_fb(struct drm_plane *_plane,
 {
        struct i915_sched_attr attr = { .priority = I915_PRIORITY_DISPLAY };
        struct intel_plane *plane = to_intel_plane(_plane);
+       struct intel_display *display = to_intel_display(plane);
        struct intel_plane_state *new_plane_state =
                to_intel_plane_state(_new_plane_state);
        struct intel_atomic_state *state =
                to_intel_atomic_state(new_plane_state->uapi.state);
-       struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
        struct intel_plane_state *old_plane_state =
                intel_atomic_get_old_plane_state(state, plane);
        struct drm_gem_object *obj = intel_fb_bo(new_plane_state->hw.fb);
@@ -1181,7 +1181,7 @@ intel_prepare_plane_fb(struct drm_plane *_plane,
         * that are not quite steady state without resorting to forcing
         * maximum clocks following a vblank miss (see do_rps_boost()).
         */
-       intel_display_rps_mark_interactive(dev_priv, state, true);
+       intel_display_rps_mark_interactive(display, state, true);
 
        return 0;
 
@@ -1202,17 +1202,17 @@ static void
 intel_cleanup_plane_fb(struct drm_plane *plane,
                       struct drm_plane_state *_old_plane_state)
 {
+       struct intel_display *display = to_intel_display(plane->dev);
        struct intel_plane_state *old_plane_state =
                to_intel_plane_state(_old_plane_state);
        struct intel_atomic_state *state =
                to_intel_atomic_state(old_plane_state->uapi.state);
-       struct drm_i915_private *dev_priv = to_i915(plane->dev);
        struct drm_gem_object *obj = intel_fb_bo(old_plane_state->hw.fb);
 
        if (!obj)
                return;
 
-       intel_display_rps_mark_interactive(dev_priv, state, false);
+       intel_display_rps_mark_interactive(display, state, false);
 
        intel_plane_unpin_fb(old_plane_state);
 }
index 918d0327169a0b64c95df8d9724ae6a7eb73ecec..4074a18798285b0976435818a9221695ea1d51de 100644 (file)
@@ -69,10 +69,12 @@ void intel_display_rps_boost_after_vblank(struct drm_crtc *crtc,
        add_wait_queue(drm_crtc_vblank_waitqueue(crtc), &wait->wait);
 }
 
-void intel_display_rps_mark_interactive(struct drm_i915_private *i915,
+void intel_display_rps_mark_interactive(struct intel_display *display,
                                        struct intel_atomic_state *state,
                                        bool interactive)
 {
+       struct drm_i915_private *i915 = to_i915(display->drm);
+
        if (state->rps_interactive == interactive)
                return;
 
index e19009c2371a205be0f205a3ca2afa432fe00b45..556891edb2ddafdf4c0fba0ea7402e4beffe1d40 100644 (file)
 
 struct dma_fence;
 struct drm_crtc;
-struct drm_i915_private;
 struct intel_atomic_state;
+struct intel_display;
 
 void intel_display_rps_boost_after_vblank(struct drm_crtc *crtc,
                                          struct dma_fence *fence);
-void intel_display_rps_mark_interactive(struct drm_i915_private *i915,
+void intel_display_rps_mark_interactive(struct intel_display *display,
                                        struct intel_atomic_state *state,
                                        bool interactive);
 
index ab21c581c1920bbe170d2b25320697efc7013a1d..fa616f9688a5ed5e2de2f3d141827b5642555df9 100644 (file)
@@ -10,7 +10,7 @@ void intel_display_rps_boost_after_vblank(struct drm_crtc *crtc,
 {
 }
 
-void intel_display_rps_mark_interactive(struct drm_i915_private *i915,
+void intel_display_rps_mark_interactive(struct intel_display *display,
                                        struct intel_atomic_state *state,
                                        bool interactive)
 {