WA_22016122933 was recently applied to all MeteorLake engines, which is simultaneously too broad (should only apply to Media engines) and too specific (should apply to all platforms that use the same media engine as MeteorLake). Correct this for all current use cases. There are two additional changes that deserve special attention: First, the usage of the workaround in i915_coherent_map_type required a more invasive change to check the gt, which was split into its own patch. Second, the addition of write barriers during ct_read and gsc_fw_load_prepare were found to be unconditional, so the workaround tags were removed as the usages were not platform dependent. v2: - Refactor i915_coherent_map_type to intel_gt_coherent_map_type and move it to the gt folder as it now takes an intel_gt instead of a drm_i915_private. v3: - Remove additional gt requirement from shmem_create_from_object. Instead of passing a gt to check if the workaround applies in intel_gt_coherent_map_type, only check if the object is lmem to determine the map type to use. v4: - Fix formatting warnings. - Add this cover letter and all missing revision notes. - Add missing acks and reviews to commit messages. - Fix contributor ordering in commit messages. Jonathan Cavitt (3): drm/i915/gt: Simplify shmem_create_from_object map_type selection drm/i915: Make i915_coherent_map_type GT-centric drm/i915/gt: Apply workaround 22016122933 correctly drivers/gpu/drm/i915/display/intel_hdcp_gsc.c | 3 ++- drivers/gpu/drm/i915/gem/i915_gem_object.h | 4 ---- drivers/gpu/drm/i915/gem/i915_gem_pages.c | 15 --------------- .../drm/i915/gem/selftests/i915_gem_migrate.c | 12 ++++++------ drivers/gpu/drm/i915/gt/intel_engine_pm.c | 2 +- drivers/gpu/drm/i915/gt/intel_gt.c | 16 ++++++++++++++++ drivers/gpu/drm/i915/gt/intel_gt.h | 9 +++++++++ drivers/gpu/drm/i915/gt/intel_gtt.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_lrc.c | 13 +++++++------ drivers/gpu/drm/i915/gt/intel_ring.c | 3 ++- drivers/gpu/drm/i915/gt/selftest_context.c | 5 +++-- drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 4 ++-- drivers/gpu/drm/i915/gt/selftest_lrc.c | 6 +++--- drivers/gpu/drm/i915/gt/shmem_utils.c | 3 +-- drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c | 7 +------ drivers/gpu/drm/i915/gt/uc/intel_guc.c | 11 ++++++----- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 4 ---- drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c | 3 +-- drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 3 ++- drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c | 3 ++- drivers/gpu/drm/i915/pxp/intel_pxp_tee.c | 5 ++++- drivers/gpu/drm/i915/selftests/igt_spinner.c | 2 +- 22 files changed, 71 insertions(+), 66 deletions(-) -- 2.25.1