diff options
author | Kamil Konieczny <kamil.konieczny@linux.intel.com> | 2022-03-31 18:34:28 +0200 |
---|---|---|
committer | Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> | 2022-04-01 08:17:45 +0200 |
commit | ee9ef376a054818cefcfc1d5701760995e1f0c39 (patch) | |
tree | e74552ac211f3f282d3c35673dcd979c1d111d9e /lib/intel_batchbuffer.c | |
parent | bc3f6833a12221a46659535dac06ebb312490eb4 (diff) |
lib/intel_batchbuffer: add create without relocs
There is create function with relocations, so add its
counterpart without it.
v3: moved down after intel_bb_create_with_relocs_and_context,
added function description (Zbigniew review)
v2: change to HIGH_TO_LOW allocation (Zbigniew)
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Diffstat (limited to 'lib/intel_batchbuffer.c')
-rw-r--r-- | lib/intel_batchbuffer.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/intel_batchbuffer.c b/lib/intel_batchbuffer.c index 2cd472d1..ebf3c598 100644 --- a/lib/intel_batchbuffer.c +++ b/lib/intel_batchbuffer.c @@ -1558,6 +1558,27 @@ intel_bb_create_with_relocs_and_context(int i915, uint32_t ctx, uint32_t size) INTEL_ALLOCATOR_NONE, ALLOC_STRATEGY_NONE); } +/** + * intel_bb_create_no_relocs: + * @i915: drm fd + * @size: size of the batchbuffer + * + * Creates bb with disabled relocations. + * This enables passing addresses and requires pinning objects. + * + * Returns: + * + * Pointer the intel_bb, asserts on failure. + */ +struct intel_bb *intel_bb_create_no_relocs(int i915, uint32_t size) +{ + igt_require(gem_uses_full_ppgtt(i915)); + + return __intel_bb_create(i915, 0, size, false, 0, 0, + INTEL_ALLOCATOR_SIMPLE, + ALLOC_STRATEGY_HIGH_TO_LOW); +} + static void __intel_bb_destroy_relocations(struct intel_bb *ibb) { uint32_t i; |