bool always_coherent)
 {
        /*
-        * Wa_22016122933: always return I915_MAP_WC for MTL
+        * Wa_22016122933: always return I915_MAP_WC for Media
+        * version 13.0 when the object is on the Media GT
         */
-       if (i915_gem_object_is_lmem(obj) || IS_METEORLAKE(gt->i915))
+       if (i915_gem_object_is_lmem(obj) || intel_gt_needs_wa_22016122933(gt))
                return I915_MAP_WC;
        if (HAS_LLC(gt->i915) || always_coherent)
                return I915_MAP_WB;
 
 #ifndef __INTEL_GT__
 #define __INTEL_GT__
 
+#include "i915_drv.h"
 #include "intel_engine_types.h"
 #include "intel_gt_types.h"
 #include "intel_reset.h"
        return !gt->info.id;
 }
 
+static inline bool intel_gt_needs_wa_22016122933(struct intel_gt *gt)
+{
+       return MEDIA_VER_FULL(gt->i915) == IP_VER(13, 0) && gt->type == GT_MEDIA;
+}
+
 static inline struct intel_gt *uc_to_gt(struct intel_uc *uc)
 {
        return container_of(uc, struct intel_gt, uc);
 
        if (IS_ERR(obj)) {
                obj = i915_gem_object_create_shmem(engine->i915, context_size);
                /*
-                * Wa_22016122933: For MTL the shared memory needs to be mapped
-                * as WC on CPU side and UC (PAT index 2) on GPU side
+                * Wa_22016122933: For Media version 13.0, all Media GT shared
+                * memory needs to be mapped as WC on CPU side and UC (PAT
+                * index 2) on GPU side.
                 */
-               if (IS_METEORLAKE(engine->i915))
+               if (intel_gt_needs_wa_22016122933(engine->gt))
                        i915_gem_object_set_cache_coherency(obj, I915_CACHE_NONE);
        }
        if (IS_ERR(obj))
 
        memcpy_toio(gsc->local_vaddr, src, gsc->fw.size);
        memset_io(gsc->local_vaddr + gsc->fw.size, 0, gsc->local->size - gsc->fw.size);
 
-       /*
-        * Wa_22016122933: Making sure the data in dst is
-        * visible to GSC right away
-        */
        intel_guc_write_barrier(>->uc.guc);
 
        i915_gem_object_unpin_map(gsc->fw.obj);
 
                return ERR_CAST(obj);
 
        /*
-        * Wa_22016122933: For MTL the shared memory needs to be mapped
-        * as WC on CPU side and UC (PAT index 2) on GPU side
+        * Wa_22016122933: For Media version 13.0, all Media GT shared
+        * memory needs to be mapped as WC on CPU side and UC (PAT
+        * index 2) on GPU side.
         */
-       if (IS_METEORLAKE(gt->i915))
+       if (intel_gt_needs_wa_22016122933(gt))
                i915_gem_object_set_cache_coherency(obj, I915_CACHE_NONE);
 
        vma = i915_vma_instance(obj, >->ggtt->vm, NULL);
 
        /* now update descriptor */
        WRITE_ONCE(desc->head, head);
 
-       /*
-        * Wa_22016122933: Making sure the head update is
-        * visible to GuC right away
-        */
        intel_guc_write_barrier(ct_to_guc(ct));
 
        return available - len;