Commit 09f9b441 authored by Andi Shyti's avatar Andi Shyti
Browse files

drm/i915: Limit the display memory alignment to 32 bit instead of 64



The coming commit "drm/i915: Introduce guard pages to i915_vma"
from Chris, was originally changing display_alignment to u32
from u64. The reason is that the display GGTT is and will be
limited o 4GB.

Put it in a separate patch and use "max(...)" instead of
"max_t(64, ...)" when asigning the value. We can safely use max
as we know beforehand that the comparison is between two u32
variables.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221130235805.221010-2-andi.shyti@linux.intel.com
parent f2053d34
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -91,7 +91,7 @@ intel_pin_fb_obj_dpt(struct drm_framebuffer *fb,
		goto err;
	}

	vma->display_alignment = max_t(u64, vma->display_alignment, alignment);
	vma->display_alignment = max(vma->display_alignment, alignment);

	i915_gem_object_flush_if_display(obj);

+1 −1
Original line number Diff line number Diff line
@@ -444,7 +444,7 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj,
	if (IS_ERR(vma))
		return vma;

	vma->display_alignment = max_t(u64, vma->display_alignment, alignment);
	vma->display_alignment = max(vma->display_alignment, alignment);
	i915_vma_mark_scanout(vma);

	i915_gem_object_flush_if_display_locked(obj);
+1 −1
Original line number Diff line number Diff line
@@ -197,7 +197,6 @@ struct i915_vma {
	struct i915_fence_reg *fence;

	u64 size;
	u64 display_alignment;
	struct i915_page_sizes page_sizes;

	/* mmap-offset associated with fencing for this vma */
@@ -205,6 +204,7 @@ struct i915_vma {

	u32 fence_size;
	u32 fence_alignment;
	u32 display_alignment;

	/**
	 * Count of the number of times this vma has been opened by different