mbox series

[0/7] Update GGTT with MI_UPDATE_GTT on MTL

Message ID 20230926083742.14740-1-nirmoy.das@intel.com (mailing list archive)
Headers show
Series Update GGTT with MI_UPDATE_GTT on MTL | expand

Message

Nirmoy Das Sept. 26, 2023, 8:37 a.m. UTC
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(-)

Comments

Andi Shyti Sept. 26, 2023, 9:35 p.m. UTC | #1
Hi Nirmoy,

On Tue, Sep 26, 2023 at 10:37:35AM +0200, Nirmoy Das wrote:
> 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.

I think you can keep a single versioning for the patches... it
makes your life easier... with git format-patch -v X, instead of
versioning each patch one by one.

Andi

> 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
>