drm/i915: move page_sizes to runtime info
If it's modified runtime, it's runtime info. Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Maarten Lankhort <maarten.lankhorst@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/f6825dd97d2ba63aa395c30131c4b9e6ef32b0c8.1660910433.git.jani.nikula@intel.com
This commit is contained in:
parent
e6f1964818
commit
9d0bad177a
|
@ -19,7 +19,7 @@ void __i915_gem_object_set_pages(struct drm_i915_gem_object *obj,
|
|||
unsigned int sg_page_sizes)
|
||||
{
|
||||
struct drm_i915_private *i915 = to_i915(obj->base.dev);
|
||||
unsigned long supported = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned long supported = RUNTIME_INFO(i915)->page_sizes;
|
||||
bool shrinkable;
|
||||
int i;
|
||||
|
||||
|
|
|
@ -358,7 +358,7 @@ fake_huge_pages_object(struct drm_i915_private *i915, u64 size, bool single)
|
|||
static int igt_check_page_sizes(struct i915_vma *vma)
|
||||
{
|
||||
struct drm_i915_private *i915 = vma->vm->i915;
|
||||
unsigned int supported = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned int supported = RUNTIME_INFO(i915)->page_sizes;
|
||||
struct drm_i915_gem_object *obj = vma->obj;
|
||||
int err;
|
||||
|
||||
|
@ -419,7 +419,7 @@ static int igt_mock_exhaust_device_supported_pages(void *arg)
|
|||
{
|
||||
struct i915_ppgtt *ppgtt = arg;
|
||||
struct drm_i915_private *i915 = ppgtt->vm.i915;
|
||||
unsigned int saved_mask = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned int saved_mask = RUNTIME_INFO(i915)->page_sizes;
|
||||
struct drm_i915_gem_object *obj;
|
||||
struct i915_vma *vma;
|
||||
int i, j, single;
|
||||
|
@ -438,7 +438,7 @@ static int igt_mock_exhaust_device_supported_pages(void *arg)
|
|||
combination |= page_sizes[j];
|
||||
}
|
||||
|
||||
mkwrite_device_info(i915)->page_sizes = combination;
|
||||
RUNTIME_INFO(i915)->page_sizes = combination;
|
||||
|
||||
for (single = 0; single <= 1; ++single) {
|
||||
obj = fake_huge_pages_object(i915, combination, !!single);
|
||||
|
@ -485,7 +485,7 @@ static int igt_mock_exhaust_device_supported_pages(void *arg)
|
|||
out_put:
|
||||
i915_gem_object_put(obj);
|
||||
out_device:
|
||||
mkwrite_device_info(i915)->page_sizes = saved_mask;
|
||||
RUNTIME_INFO(i915)->page_sizes = saved_mask;
|
||||
|
||||
return err;
|
||||
}
|
||||
|
@ -495,7 +495,7 @@ static int igt_mock_memory_region_huge_pages(void *arg)
|
|||
const unsigned int flags[] = { 0, I915_BO_ALLOC_CONTIGUOUS };
|
||||
struct i915_ppgtt *ppgtt = arg;
|
||||
struct drm_i915_private *i915 = ppgtt->vm.i915;
|
||||
unsigned long supported = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned long supported = RUNTIME_INFO(i915)->page_sizes;
|
||||
struct intel_memory_region *mem;
|
||||
struct drm_i915_gem_object *obj;
|
||||
struct i915_vma *vma;
|
||||
|
@ -573,7 +573,7 @@ static int igt_mock_ppgtt_misaligned_dma(void *arg)
|
|||
{
|
||||
struct i915_ppgtt *ppgtt = arg;
|
||||
struct drm_i915_private *i915 = ppgtt->vm.i915;
|
||||
unsigned long supported = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned long supported = RUNTIME_INFO(i915)->page_sizes;
|
||||
struct drm_i915_gem_object *obj;
|
||||
int bit;
|
||||
int err;
|
||||
|
@ -1390,7 +1390,7 @@ out_put:
|
|||
static int igt_ppgtt_sanity_check(void *arg)
|
||||
{
|
||||
struct drm_i915_private *i915 = arg;
|
||||
unsigned int supported = INTEL_INFO(i915)->page_sizes;
|
||||
unsigned int supported = RUNTIME_INFO(i915)->page_sizes;
|
||||
struct {
|
||||
igt_create_fn fn;
|
||||
unsigned int flags;
|
||||
|
|
|
@ -1218,7 +1218,7 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915,
|
|||
|
||||
#define HAS_PAGE_SIZES(dev_priv, sizes) ({ \
|
||||
GEM_BUG_ON((sizes) == 0); \
|
||||
((sizes) & ~INTEL_INFO(dev_priv)->page_sizes) == 0; \
|
||||
((sizes) & ~RUNTIME_INFO(dev_priv)->page_sizes) == 0; \
|
||||
})
|
||||
|
||||
#define HAS_OVERLAY(dev_priv) (INTEL_INFO(dev_priv)->display.has_overlay)
|
||||
|
|
|
@ -1091,8 +1091,7 @@ int i915_gem_init(struct drm_i915_private *dev_priv)
|
|||
|
||||
/* We need to fallback to 4K pages if host doesn't support huge gtt. */
|
||||
if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv))
|
||||
mkwrite_device_info(dev_priv)->page_sizes =
|
||||
I915_GTT_PAGE_SIZE_4K;
|
||||
RUNTIME_INFO(dev_priv)->page_sizes = I915_GTT_PAGE_SIZE_4K;
|
||||
|
||||
ret = i915_gem_init_userptr(dev_priv);
|
||||
if (ret)
|
||||
|
|
|
@ -160,7 +160,7 @@
|
|||
/* Keep in gen based order, and chronological order within a gen */
|
||||
|
||||
#define GEN_DEFAULT_PAGE_SIZES \
|
||||
.page_sizes = I915_GTT_PAGE_SIZE_4K
|
||||
.__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K
|
||||
|
||||
#define GEN_DEFAULT_REGIONS \
|
||||
.memory_regions = REGION_SMEM | REGION_STOLEN_SMEM
|
||||
|
@ -647,7 +647,7 @@ static const struct intel_device_info chv_info = {
|
|||
};
|
||||
|
||||
#define GEN9_DEFAULT_PAGE_SIZES \
|
||||
.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
.__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
I915_GTT_PAGE_SIZE_64K
|
||||
|
||||
#define GEN9_FEATURES \
|
||||
|
@ -802,7 +802,7 @@ static const struct intel_device_info cml_gt2_info = {
|
|||
};
|
||||
|
||||
#define GEN11_DEFAULT_PAGE_SIZES \
|
||||
.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
.__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
I915_GTT_PAGE_SIZE_64K | \
|
||||
I915_GTT_PAGE_SIZE_2M
|
||||
|
||||
|
@ -1001,7 +1001,7 @@ static const struct intel_device_info adl_p_info = {
|
|||
#undef GEN
|
||||
|
||||
#define XE_HP_PAGE_SIZES \
|
||||
.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
.__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K | \
|
||||
I915_GTT_PAGE_SIZE_64K | \
|
||||
I915_GTT_PAGE_SIZE_2M
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ void intel_device_info_print(const struct intel_device_info *info,
|
|||
|
||||
drm_printf(p, "gt: %d\n", info->gt);
|
||||
drm_printf(p, "memory-regions: %x\n", info->memory_regions);
|
||||
drm_printf(p, "page-sizes: %x\n", info->page_sizes);
|
||||
drm_printf(p, "page-sizes: %x\n", runtime->page_sizes);
|
||||
drm_printf(p, "platform: %s\n", intel_platform_name(info->platform));
|
||||
drm_printf(p, "ppgtt-size: %d\n", info->ppgtt_size);
|
||||
drm_printf(p, "ppgtt-type: %d\n", info->ppgtt_type);
|
||||
|
|
|
@ -221,6 +221,8 @@ struct intel_runtime_info {
|
|||
|
||||
struct intel_step_info step;
|
||||
|
||||
unsigned int page_sizes; /* page sizes supported by the HW */
|
||||
|
||||
/* display */
|
||||
struct {
|
||||
u8 num_sprites[I915_MAX_PIPES];
|
||||
|
@ -242,8 +244,6 @@ struct intel_device_info {
|
|||
enum intel_ppgtt_type ppgtt_type;
|
||||
unsigned int ppgtt_size; /* log2, e.g. 31/32/48 bits */
|
||||
|
||||
unsigned int page_sizes; /* page sizes supported by the HW */
|
||||
|
||||
u32 memory_regions; /* regions supported by the HW */
|
||||
|
||||
u8 gt; /* GT number, 0 if undefined */
|
||||
|
|
|
@ -174,7 +174,7 @@ struct drm_i915_private *mock_gem_device(void)
|
|||
|
||||
RUNTIME_INFO(i915)->graphics.ver = -1;
|
||||
|
||||
mkwrite_device_info(i915)->page_sizes =
|
||||
RUNTIME_INFO(i915)->page_sizes =
|
||||
I915_GTT_PAGE_SIZE_4K |
|
||||
I915_GTT_PAGE_SIZE_64K |
|
||||
I915_GTT_PAGE_SIZE_2M;
|
||||
|
|
Loading…
Reference in New Issue