[Intel-gfx] [PATCH] drm/i915: Report the actual swizzling back to userspace
Daniel Vetter
daniel at ffwll.ch
Fri Oct 24 16:39:29 CEST 2014
On Fri, Oct 24, 2014 at 12:11:11PM +0100, Chris Wilson wrote:
> Userspace cares about whether or not swizzling depends on the page
> address for its direct access into bound objects. Extend the get_tiling
> ioctl to report the physical swizzling value in addition to the logical
> swizzling value so that userspace can accurately determine when it is
> possible for manual detiling.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Akash Goel <akash.goel at intel.com>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
I wonder whether we should care really, since on gen5+ we know that they
agree. Pimp some igt (by skipping if needed) to convince me?
-Daniel
> ---
> drivers/gpu/drm/i915/i915_gem_tiling.c | 1 +
> include/uapi/drm/i915_drm.h | 6 ++++++
> 2 files changed, 7 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
> index 3c073fb58730..b53ec941f17e 100644
> --- a/drivers/gpu/drm/i915/i915_gem_tiling.c
> +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
> @@ -446,6 +446,7 @@ i915_gem_get_tiling(struct drm_device *dev, void *data,
> }
>
> /* Hide bit 17 from the user -- see comment in i915_gem_set_tiling */
> + args->phys_swizzle_mode = args->swizzle_mode;
> if (args->swizzle_mode == I915_BIT_6_SWIZZLE_9_17)
> args->swizzle_mode = I915_BIT_6_SWIZZLE_9;
> if (args->swizzle_mode == I915_BIT_6_SWIZZLE_9_10_17)
> diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
> index 7615ae68e015..5ff86692e03e 100644
> --- a/include/uapi/drm/i915_drm.h
> +++ b/include/uapi/drm/i915_drm.h
> @@ -934,6 +934,12 @@ struct drm_i915_gem_get_tiling {
> * mmap mapping.
> */
> __u32 swizzle_mode;
> +
> + /**
> + * Returned address bit 6 swizzling required for CPU access through
> + * mmap mapping whilst bound.
> + */
> + __u32 phys_swizzle_mode;
> };
>
> struct drm_i915_gem_get_aperture {
> --
> 2.1.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list