]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-6.6/drm-i915-display-use-i915_gem_object_get_dma_address.patch
Linux 6.1.85
[thirdparty/kernel/stable-queue.git] / queue-6.6 / drm-i915-display-use-i915_gem_object_get_dma_address.patch
1 From c7c4c04f8ebf069719bdcad9549a0a840c1708b1 Mon Sep 17 00:00:00 2001
2 From: Sasha Levin <sashal@kernel.org>
3 Date: Wed, 25 Oct 2023 12:11:31 +0200
4 Subject: drm/i915/display: Use i915_gem_object_get_dma_address to get dma
5 address
6 MIME-Version: 1.0
7 Content-Type: text/plain; charset=UTF-8
8 Content-Transfer-Encoding: 8bit
9
10 From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
11
12 [ Upstream commit 7054b551de18e9875fbdf8d4f3baade428353545 ]
13
14 Works better for xe like that. obj is no longer const.
15
16 Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
17 Link: https://patchwork.freedesktop.org/patch/msgid/20231204134946.16219-1-maarten.lankhorst@linux.intel.com
18 Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
19 Stable-dep-of: 582dc04b0658 ("drm/i915: Pre-populate the cursor physical dma address")
20 Signed-off-by: Sasha Levin <sashal@kernel.org>
21 ---
22 drivers/gpu/drm/i915/display/intel_cursor.c | 6 ++++--
23 1 file changed, 4 insertions(+), 2 deletions(-)
24
25 diff --git a/drivers/gpu/drm/i915/display/intel_cursor.c b/drivers/gpu/drm/i915/display/intel_cursor.c
26 index b342fad180ca5..0d21c34f74990 100644
27 --- a/drivers/gpu/drm/i915/display/intel_cursor.c
28 +++ b/drivers/gpu/drm/i915/display/intel_cursor.c
29 @@ -23,6 +23,8 @@
30 #include "intel_psr.h"
31 #include "skl_watermark.h"
32
33 +#include "gem/i915_gem_object.h"
34 +
35 /* Cursor formats */
36 static const u32 intel_cursor_formats[] = {
37 DRM_FORMAT_ARGB8888,
38 @@ -33,11 +35,11 @@ static u32 intel_cursor_base(const struct intel_plane_state *plane_state)
39 struct drm_i915_private *dev_priv =
40 to_i915(plane_state->uapi.plane->dev);
41 const struct drm_framebuffer *fb = plane_state->hw.fb;
42 - const struct drm_i915_gem_object *obj = intel_fb_obj(fb);
43 + struct drm_i915_gem_object *obj = intel_fb_obj(fb);
44 u32 base;
45
46 if (DISPLAY_INFO(dev_priv)->cursor_needs_physical)
47 - base = sg_dma_address(obj->mm.pages->sgl);
48 + base = i915_gem_object_get_dma_address(obj, 0);
49 else
50 base = intel_plane_ggtt_offset(plane_state);
51
52 --
53 2.43.0
54