Quoting Ramalingam C (2019-11-05 11:30:29) > When LMEM is supported, dumb buffer preferred to be created from LMEM. > > v2: > Parameters are reshuffled. [Chris] > v3: > s/region_id/mem_type > > Signed-off-by: Ramalingam C <ramalingam.c@xxxxxxxxx> > cc: Matthew Auld <matthew.auld@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_gem.c | 17 ++++++++++++++--- > 1 file changed, 14 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index 143a8952b736..db72af98905f 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -44,6 +44,7 @@ > #include "gem/i915_gem_clflush.h" > #include "gem/i915_gem_context.h" > #include "gem/i915_gem_ioctls.h" > +#include "gem/i915_gem_lmem.h" > #include "gem/i915_gem_pm.h" > #include "gt/intel_engine_user.h" > #include "gt/intel_gt.h" > @@ -175,6 +176,7 @@ i915_gem_phys_pwrite(struct drm_i915_gem_object *obj, > static int > i915_gem_create(struct drm_file *file, > struct drm_i915_private *dev_priv, > + enum intel_memory_type mem_type, > u64 *size_p, > u32 *handle_p) > { > @@ -188,7 +190,11 @@ i915_gem_create(struct drm_file *file, > return -EINVAL; > > /* Allocate the new object */ > - obj = i915_gem_object_create_shmem(dev_priv, size); > + if (mem_type == INTEL_MEMORY_LOCAL) > + obj = i915_gem_object_create_lmem(dev_priv, size, 0); > + else > + obj = i915_gem_object_create_shmem(dev_priv, size); Have you not talked Matthew into creating a i915_gem_object_create_region(?dev_priv?, intel_memory_region_lookup(dev_priv, mem_type), size, flags) yet? -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx