[Intel-gfx] [PATCH v2] drm/i915: move i915_gem_object_needs_bit17_swizzle() to i915_gem_tiling.[ch]

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Thu Mar 17 09:27:23 UTC 2022


On 16/03/2022 09:50, Jani Nikula wrote:
> Move i915_gem_object_needs_bit17_swizzle() to i915_gem_tiling.[ch] as a
> i915_gem_object function related to tiling. Also un-inline while at it;
> does not seem like this is a function needed in hot paths.
> 
> v2: i915_gem_tiling.[ch] instead of intel_ggtt_fencing.[ch] (Chris)

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>

Regards,

Tvrtko

> Cc: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> ---
>   drivers/gpu/drm/i915/gem/i915_gem_phys.c   | 1 +
>   drivers/gpu/drm/i915/gem/i915_gem_shmem.c  | 3 ++-
>   drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 8 ++++++++
>   drivers/gpu/drm/i915/gem/i915_gem_tiling.h | 2 ++
>   drivers/gpu/drm/i915/i915_drv.h            | 9 ---------
>   5 files changed, 13 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_phys.c b/drivers/gpu/drm/i915/gem/i915_gem_phys.c
> index ca6faffcc496..0d0e46dae559 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_phys.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_phys.c
> @@ -14,6 +14,7 @@
>   #include "i915_drv.h"
>   #include "i915_gem_object.h"
>   #include "i915_gem_region.h"
> +#include "i915_gem_tiling.h"
>   #include "i915_scatterlist.h"
>   
>   static int i915_gem_object_get_pages_phys(struct drm_i915_gem_object *obj)
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_shmem.c b/drivers/gpu/drm/i915/gem/i915_gem_shmem.c
> index 3a1c782ed791..c7541dc687c1 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_shmem.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_shmem.c
> @@ -12,8 +12,9 @@
>   
>   #include "gem/i915_gem_region.h"
>   #include "i915_drv.h"
> -#include "i915_gemfs.h"
>   #include "i915_gem_object.h"
> +#include "i915_gem_tiling.h"
> +#include "i915_gemfs.h"
>   #include "i915_scatterlist.h"
>   #include "i915_trace.h"
>   
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> index d6adda5bf96b..80ac0db1ae8c 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> @@ -219,6 +219,14 @@ i915_gem_object_fence_prepare(struct drm_i915_gem_object *obj,
>   	return ret;
>   }
>   
> +bool i915_gem_object_needs_bit17_swizzle(struct drm_i915_gem_object *obj)
> +{
> +	struct drm_i915_private *i915 = to_i915(obj->base.dev);
> +
> +	return to_gt(i915)->ggtt->bit_6_swizzle_x == I915_BIT_6_SWIZZLE_9_10_17 &&
> +		i915_gem_object_is_tiled(obj);
> +}
> +
>   int
>   i915_gem_object_set_tiling(struct drm_i915_gem_object *obj,
>   			   unsigned int tiling, unsigned int stride)
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_tiling.h b/drivers/gpu/drm/i915/gem/i915_gem_tiling.h
> index 9924196a8139..6bd5751abf28 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_tiling.h
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_tiling.h
> @@ -8,8 +8,10 @@
>   
>   #include <linux/types.h>
>   
> +struct drm_i915_gem_object;
>   struct drm_i915_private;
>   
> +bool i915_gem_object_needs_bit17_swizzle(struct drm_i915_gem_object *obj);
>   u32 i915_gem_fence_size(struct drm_i915_private *i915, u32 size,
>   			unsigned int tiling, unsigned int stride);
>   u32 i915_gem_fence_alignment(struct drm_i915_private *i915, u32 size,
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 26df561a4e94..a9aceb08fcd1 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -1486,15 +1486,6 @@ void i915_gem_driver_release(struct drm_i915_private *dev_priv);
>   
>   int i915_gem_open(struct drm_i915_private *i915, struct drm_file *file);
>   
> -/* i915_gem_tiling.c */
> -static inline bool i915_gem_object_needs_bit17_swizzle(struct drm_i915_gem_object *obj)
> -{
> -	struct drm_i915_private *i915 = to_i915(obj->base.dev);
> -
> -	return to_gt(i915)->ggtt->bit_6_swizzle_x == I915_BIT_6_SWIZZLE_9_10_17 &&
> -		i915_gem_object_is_tiled(obj);
> -}
> -
>   /* intel_device_info.c */
>   static inline struct intel_device_info *
>   mkwrite_device_info(struct drm_i915_private *dev_priv)


More information about the Intel-gfx mailing list