Implement a way to update GGTT using MI_UPDATE_GTT command when possible for MTL as a suggested work around for HW bugs, Wa_13010847436 and Wa_14019519902. 1st patch improve pm wakeref handeling which needed as we do GGTT update with vm->mutext held and not allowed to alloc memory. 2: Fix lockdep warning related to GT wakeref vs blitter engine wakeref. v3: Rearrange patches/diffs to fix code mixups(Andi) v4: fix ce leak(Oak) v5: rebase & resend with new "Test-with" v6: move context ready status chnages to lower levels from i915_driver.c. Add more docs and improve function names. Chris Wilson (1): drm/i915: Lift runtime-pm acquire callbacks out of intel_wakeref.mutex Nirmoy Das (6): drm/i915: Create a kernel context for GGTT updates drm/i915: Implement for_each_sgt_daddr_next drm/i915: Parameterize binder context creation drm/i915: Implement GGTT update method with MI_UPDATE_GTT drm/i915: Toggle binder context ready status drm/i915: Enable GGTT updates with binder in MTL drivers/gpu/drm/i915/gt/intel_engine.h | 2 + drivers/gpu/drm/i915/gt/intel_engine_cs.c | 40 +++- drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 + drivers/gpu/drm/i915/gt/intel_ggtt.c | 235 +++++++++++++++++++ drivers/gpu/drm/i915/gt/intel_gt.c | 49 ++++ drivers/gpu/drm/i915/gt/intel_gt.h | 3 + drivers/gpu/drm/i915/gt/intel_gt_pm.c | 4 + drivers/gpu/drm/i915/gt/intel_gtt.c | 5 + drivers/gpu/drm/i915/gt/intel_gtt.h | 5 + drivers/gpu/drm/i915/i915_scatterlist.h | 10 + drivers/gpu/drm/i915/intel_wakeref.c | 52 ++-- 11 files changed, 380 insertions(+), 28 deletions(-) -- 2.41.0