iris: Move tiling_to_modifier() implementation to i915 folder
There is no tiling in Xe KMD uAPI. With this one more i915_drm.h include can be removed. Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28327>
This commit is contained in:
committed by
Marge Bot
parent
cc570dbada
commit
50eceb1e33
@@ -108,3 +108,17 @@ int iris_i915_bo_set_tiling(struct iris_bo *bo, const struct isl_surf *surf)
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
uint64_t
|
||||
iris_i915_tiling_to_modifier(uint32_t tiling)
|
||||
{
|
||||
static const uint64_t map[] = {
|
||||
[I915_TILING_NONE] = DRM_FORMAT_MOD_LINEAR,
|
||||
[I915_TILING_X] = I915_FORMAT_MOD_X_TILED,
|
||||
[I915_TILING_Y] = I915_FORMAT_MOD_Y_TILED,
|
||||
};
|
||||
|
||||
assert(tiling < ARRAY_SIZE(map));
|
||||
|
||||
return map[tiling];
|
||||
}
|
||||
|
||||
@@ -34,5 +34,6 @@ bool iris_i915_bo_busy_gem(struct iris_bo *bo);
|
||||
int iris_i915_bo_wait_gem(struct iris_bo *bo, int64_t timeout_ns);
|
||||
int iris_i915_bo_get_tiling(struct iris_bo *bo, uint32_t *tiling);
|
||||
int iris_i915_bo_set_tiling(struct iris_bo *bo, const struct isl_surf *surf);
|
||||
uint64_t iris_i915_tiling_to_modifier(uint32_t tiling);
|
||||
|
||||
bool iris_i915_init_global_vm(struct iris_bufmgr *bufmgr, uint32_t *vm_id);
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "util/u_transfer_helper.h"
|
||||
#include "util/u_upload_mgr.h"
|
||||
#include "util/ralloc.h"
|
||||
#include "i915/iris_bufmgr.h"
|
||||
#include "iris_batch.h"
|
||||
#include "iris_context.h"
|
||||
#include "iris_resource.h"
|
||||
@@ -54,7 +55,6 @@
|
||||
#include "intel/dev/intel_debug.h"
|
||||
#include "isl/isl.h"
|
||||
#include "drm-uapi/drm_fourcc.h"
|
||||
#include "drm-uapi/i915_drm.h"
|
||||
|
||||
enum modifier_priority {
|
||||
MODIFIER_PRIORITY_INVALID = 0,
|
||||
@@ -1161,17 +1161,14 @@ iris_resource_create(struct pipe_screen *pscreen,
|
||||
}
|
||||
|
||||
static uint64_t
|
||||
tiling_to_modifier(uint32_t tiling)
|
||||
tiling_to_modifier(struct iris_bufmgr *bufmgr, uint32_t tiling)
|
||||
{
|
||||
static const uint64_t map[] = {
|
||||
[I915_TILING_NONE] = DRM_FORMAT_MOD_LINEAR,
|
||||
[I915_TILING_X] = I915_FORMAT_MOD_X_TILED,
|
||||
[I915_TILING_Y] = I915_FORMAT_MOD_Y_TILED,
|
||||
};
|
||||
if (iris_bufmgr_get_device_info(bufmgr)->kmd_type != INTEL_KMD_TYPE_I915) {
|
||||
assert(tiling == 0);
|
||||
return DRM_FORMAT_MOD_LINEAR;
|
||||
}
|
||||
|
||||
assert(tiling < ARRAY_SIZE(map));
|
||||
|
||||
return map[tiling];
|
||||
return iris_i915_tiling_to_modifier(tiling);
|
||||
}
|
||||
|
||||
static struct pipe_resource *
|
||||
@@ -1351,7 +1348,7 @@ iris_resource_from_handle(struct pipe_screen *pscreen,
|
||||
/* We have no modifier; match whatever GEM_GET_TILING says */
|
||||
uint32_t tiling;
|
||||
iris_gem_get_tiling(main_res->bo, &tiling);
|
||||
modifier = tiling_to_modifier(tiling);
|
||||
modifier = tiling_to_modifier(bufmgr, tiling);
|
||||
} else {
|
||||
modifier = whandle->modifier;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user