[PATCH v2 3/6] drm/i915: Move the intel_dpt_offset() check into intel_plane_pin_fb()
Jani Nikula
jani.nikula at linux.intel.com
Thu Apr 10 08:51:01 UTC 2025
On Wed, 02 Apr 2025, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Now that we handle all the other vma offset stuff in
> intel_plane_pin_fb() it seems more proper to do the
> dpt_vma offset check there as well.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_fb_pin.c | 7 +++++++
> drivers/gpu/drm/i915/display/skl_universal_plane.c | 6 ------
> 2 files changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fb_pin.c b/drivers/gpu/drm/i915/display/intel_fb_pin.c
> index f2d8675dd98a..a5b9d87b2255 100644
> --- a/drivers/gpu/drm/i915/display/intel_fb_pin.c
> +++ b/drivers/gpu/drm/i915/display/intel_fb_pin.c
> @@ -259,6 +259,7 @@ intel_plane_fb_vtd_guard(const struct intel_plane_state *plane_state)
> int intel_plane_pin_fb(struct intel_plane_state *plane_state,
> const struct intel_plane_state *old_plane_state)
> {
> + struct intel_display *display = to_intel_display(plane_state);
> struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
> const struct intel_framebuffer *fb =
> to_intel_framebuffer(plane_state->hw.fb);
> @@ -297,6 +298,12 @@ int intel_plane_pin_fb(struct intel_plane_state *plane_state,
> plane_state->dpt_vma = vma;
>
> WARN_ON(plane_state->ggtt_vma == plane_state->dpt_vma);
> +
> + /*
> + * The DPT object contains only one vma, so
> + * the VMA's offset within the DPT is always 0.
> + */
> + drm_WARN_ON(display->drm, intel_dpt_offset(plane_state->dpt_vma));
> }
>
> /*
> diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> index b82a9e07350b..808580826b0e 100644
> --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
> +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> @@ -1271,12 +1271,6 @@ static u32 skl_surf_address(const struct intel_plane_state *plane_state,
> u32 offset = plane_state->view.color_plane[color_plane].offset;
>
> if (intel_fb_uses_dpt(fb)) {
> - /*
> - * The DPT object contains only one vma, so the VMA's offset
> - * within the DPT is always 0.
> - */
> - drm_WARN_ON(display->drm, plane_state->dpt_vma &&
> - intel_dpt_offset(plane_state->dpt_vma));
> drm_WARN_ON(display->drm, offset & 0x1fffff);
> return offset >> 9;
> } else {
--
Jani Nikula, Intel
More information about the Intel-xe
mailing list