@@ -496,11 +496,14 @@ eb_validate_vma(struct i915_execbuffer *eb,
struct drm_i915_gem_exec_object2 *entry,
struct i915_vma *vma)
{
- /* Relocations are disallowed for all platforms after TGL-LP. This
- * also covers all platforms with local memory.
+ /*
+ * Relocations are disallowed starting from gen12 with some exceptions
+ * - TGL/RKL/ADL.
*/
if (entry->relocation_count &&
- INTEL_GEN(eb->i915) >= 12 && !IS_TIGERLAKE(eb->i915))
+ INTEL_GEN(eb->i915) >= 12 && !(IS_TIGERLAKE(eb->i915) ||
+ IS_ROCKETLAKE(eb->i915) ||
+ IS_ALDERLAKE_S(eb->i915)))
return -EINVAL;
if (unlikely(entry->flags & eb->invalid_flags))
We have established previously we stop using relocations starting from gen12 platforms with Tigerlake as an exception. Unfortunately we need extend transition period and support relocations for two other igfx platforms - Rocketlake and Alderlake. As Alderlake is coming in two variants - S and P and only S landed upstream already we will need to extend the relocation enabling condition one more time for P version in the future. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Dave Airlie <airlied@redhat.com> Cc: Daniel Vetter <daniel.vetter@intel.com> Cc: Jason Ekstrand <jason@jlekstrand.net> --- drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)