[PATCH] drm/i915: Allow NULL memory region

2024-07-12 Thread Jonathan Cavitt
Prevent a NULL pointer access in intel_memory_regions_hw_probe. Fixes: 05da7d9f717b ("drm/i915/gem: Downgrade stolen lmem setup warning") Reported-by: Dan Carpenter Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/intel_memory_region.c | 6 -- 1 file changed, 4 insert

[PATCH v2] drm/i915/gem: Downgrade stolen lmem setup warning

2024-04-22 Thread Jonathan Cavitt
f <0f> 0b 49 c7 c4 ed ff ff ff e9 e0 fd ff ff 0f b7 d2 48 c7 c6 00 d9 <4> [144.862299] RSP: 0018:c90005607980 EFLAGS: 00010207 <4> [144.862315] RAX: fff0 RBX: 0003 RCX: 0000 Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10833 Sugg

[PATCH] drm/i915/gem: Downgrade stolen lmem setup warning

2024-04-19 Thread Jonathan Cavitt
f <0f> 0b 49 c7 c4 ed ff ff ff e9 e0 fd ff ff 0f b7 d2 48 c7 c6 00 d9 <4> [144.862299] RSP: 0018:c90005607980 EFLAGS: 00010207 <4> [144.862315] RAX: fff0 RBX: 0003 RCX: 0000 Fixes: https://gitlab.freedesktop.org/drm/intel/-/issues/108

[PATCH v2] drm/i915/gem: Execbuffer objects must have struct pages.

2024-03-12 Thread Jonathan Cavitt
We cannot write requests to objects without struct pages, so escape early if the requests are bound to objects that lack them. Signed-off-by: Jonathan Cavitt --- v2: s/vma-obj/vma->obj drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 7 +++ 1 file changed, 7 insertions(+) diff --gi

[PATCH] drm/i915/gem: Execbuffer objects must have struct pages.

2024-03-11 Thread Jonathan Cavitt
We cannot write requests to objects without struct pages, so escape early if the requests are bound to objects that lack them. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpu/drm/i915/gem

[PATCH topic/core-for-CI 2/3] mei: me: add arrow lake point H DID

2024-02-28 Thread Jonathan Cavitt
From: Alexander Usyskin Add Arrow Lake H device id. Cc: Signed-off-by: Alexander Usyskin Signed-off-by: Tomas Winkler --- drivers/misc/mei/hw-me-regs.h | 1 + drivers/misc/mei/pci-me.c | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/

[PATCH topic/core-for-CI 3/3] mei: gsc_proxy: match component when GSC is on different bus

2024-02-28 Thread Jonathan Cavitt
From: Alexander Usyskin On Arrow Lake S systems, MEI is no longer strictly connected to bus 0, while graphics remain exclusively on bus 0. Adapt the component matching logic to accommodate this change: Original behavior: Required both MEI and graphics to be on the same bus 0. New behavior: Only

[PATCH topic/core-for-CI 1/3] mei: me: add arrow lake point S DID

2024-02-28 Thread Jonathan Cavitt
From: Alexander Usyskin Add Arrow Lake S device id. Cc: Signed-off-by: Alexander Usyskin Signed-off-by: Tomas Winkler --- drivers/misc/mei/hw-me-regs.h | 1 + drivers/misc/mei/pci-me.c | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/

[PATCH 2/3] mei: me: add arrow lake point H DID

2024-02-27 Thread Jonathan Cavitt
From: Alexander Usyskin Add Arrow Lake H device id. Cc: Signed-off-by: Alexander Usyskin Signed-off-by: Tomas Winkler --- drivers/misc/mei/hw-me-regs.h | 1 + drivers/misc/mei/pci-me.c | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/

[PATCH 1/3] mei: me: add arrow lake point S DID

2024-02-27 Thread Jonathan Cavitt
From: Alexander Usyskin Add Arrow Lake S device id. Cc: Signed-off-by: Alexander Usyskin Signed-off-by: Tomas Winkler --- drivers/misc/mei/hw-me-regs.h | 1 + drivers/misc/mei/pci-me.c | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/

[PATCH 3/3] mei: gsc_proxy: match component when GSC is on different bus

2024-02-27 Thread Jonathan Cavitt
From: Alexander Usyskin On Arrow Lake S systems, MEI is no longer strictly connected to bus 0, while graphics remain exclusively on bus 0. Adapt the component matching logic to accommodate this change: Original behavior: Required both MEI and graphics to be on the same bus 0. New behavior: Only

[PATCH] Revert "drm/i915/gt: Temporarily disable CPU caching into DMA for MTL"

2023-12-13 Thread Jonathan Cavitt
This reverts commit 34df0a031d8f3488fe72627b041a1f82437fa6ec. It appears that the temporary workaround to prevent CAT errors is no longer required, as even with it reverted the CAT errors didn't occur when tested manually. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/intel_

[Intel-gfx] [PATCH] drm/i915/gem: Atomically invalidate userptr on mmu-notifier

2023-11-28 Thread Jonathan Cavitt
tion (such as try_to_unmap) adjusting the vm_area_struct, so it is safe to keep the pages around for as long as we still have i/o pending. We do not have any means currently to asynchronously revalidate the userptr pages, that is always prior to next use. Signed-off-by: Chris Wilson Signed-off-by: Jo

[Intel-gfx] [PATCH] drm/i915/gt: Temporarily disable CPU caching into DMA for MTL

2023-11-02 Thread Jonathan Cavitt
on MTL until a proper ATS solution is found. Signed-off-by: Jonathan Cavitt CC: Chris Wilson --- drivers/gpu/drm/i915/gt/intel_gtt.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/gpu/drm/i915/gt/intel_gtt.c b/drivers/gpu/drm/i915/gt/intel_gtt.c index

[Intel-gfx] [PATCH v17 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-17 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v17 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-17 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v17 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-17 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v17 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-17 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v17 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-17 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmoy Das Rev

[Intel-gfx] [PATCH v17 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-17 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v17 2/7] drm/i915/guc: Add CT size delay helper

2023-10-17 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v17 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-17 Thread Jonathan Cavitt
enabled in guc_send_invalidate_tlb. - Explain the purpose of both uses of intel_gt_is_enabled as comments in guc_send_invalidate_tlb. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm/i915: No TLB invalidation on suspended GT drm/i9

[Intel-gfx] [PATCH v16 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-16 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v16 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-16 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmoy Das Rev

[Intel-gfx] [PATCH v16 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-16 Thread Jonathan Cavitt
k to the way it was in v12, since it looks better and is functionally equivalent. - s/readd/re-add v16: - Swap must_wait_woken and intel_gt_is_enabled checks in guc_send_invalidate_tlb. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size de

[Intel-gfx] [PATCH v16 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-16 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v16 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-16 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v16 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-16 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v16 2/7] drm/i915/guc: Add CT size delay helper

2023-10-16 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v16 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-16 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v15 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-13 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v15 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-13 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmoy Das Rev

[Intel-gfx] [PATCH v15 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-13 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v15 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-13 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v15 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-13 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v15 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-13 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v15 2/7] drm/i915/guc: Add CT size delay helper

2023-10-13 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v15 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-13 Thread Jonathan Cavitt
k to the way it was in v12, since it looks better and is functionally equivalent. - s/readd/re-add Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm/i915: No TLB invalidation on suspended GT drm/i915: No TLB invalidation

[Intel-gfx] [PATCH v14 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-13 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v14 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-13 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmoy Das Rev

[Intel-gfx] [PATCH v14 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-13 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v14 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-13 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v14 2/7] drm/i915/guc: Add CT size delay helper

2023-10-13 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v14 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-13 Thread Jonathan Cavitt
et to the end of __uc_hw_init. - Remove gen8_ggtt_invalidate changes, as they aren't related to GuC TLB invalidation. - Add missing newline. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm/i915: No TLB invalidation on

[Intel-gfx] [PATCH v14 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-13 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v14 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-13 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v13 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-12 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v13 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-12 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v13 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-12 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v13 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-12 Thread Jonathan Cavitt
from wake_up_all_tlb_invalidate. - Align patches 3 and 4 by adding a check for GuC TLB invalidation support to the former that was added in the latter. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm/i915: No TLB invalid

[Intel-gfx] [PATCH v13 2/7] drm/i915/guc: Add CT size delay helper

2023-10-12 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v13 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-12 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v13 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-12 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmoy Das Rev

[Intel-gfx] [PATCH v13 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-12 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v12 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-11 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [PATCH v12 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-11 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH v12 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-11 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Reviewed-by: Nirmoy Das --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3

[Intel-gfx] [PATCH v12 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-11 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by

[Intel-gfx] [PATCH v12 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-11 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti Acked-by: Tvrtko Ursulin Acked-by: Nirmo

[Intel-gfx] [PATCH v12 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-11 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v12 2/7] drm/i915/guc: Add CT size delay helper

2023-10-11 Thread Jonathan Cavitt
As of now, there is no mechanism for tracking a given request's progress through the queue. Instead, add a helper that returns an estimated maximum time the queue should take to drain if completely full. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v12 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-11 Thread Jonathan Cavitt
C TLB invalidations if guc is not ready. - Add path for INTEL_GUC_ACTION_TLB_INVALIDATION_DONE to immediately process in ct_process_request after it is submitted to ct_handle_event. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm

[Intel-gfx] [PATCH v11 2/7] drm/i915/guc: Add CT size delay helper

2023-10-10 Thread Jonathan Cavitt
CT buffer can store. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti --- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 27 +++ drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h | 2 ++ 2 files changed, 29 insertions(+) diff --git a/drivers/gpu/drm

[Intel-gfx] [PATCH v11 5/7] drm/i915: No TLB invalidation on wedged GT

2023-10-10 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi Shyti --- .../gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH v11 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-10 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915

[Intel-gfx] [PATCH v11 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-10 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti

[Intel-gfx] [PATCH v11 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-10 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Signed-off-by: Jonathan Cavitt Reviewed-by: Andi Shyti --- drivers/gpu/drm/i915/gt/selftest_tlb.c | 11 +-- 1 file changed, 9

[Intel-gfx] [PATCH v11 0/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
some comments. - Produce error message if attempting to free a busy wait during fini_tlb_lookup. - Revert default sleep back to 10 ms. - Link to RFC. Jonathan Cavitt (6): drm/i915: Add GuC TLB Invalidation device info flags drm/i915/guc: Add CT size delay helper drm/i915: No TLB invalidati

[Intel-gfx] [PATCH v11 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti Reviewed-by: Andi Shyti --- drivers/gpu/drm/i915/gt/intel_ggtt.c

[Intel-gfx] [PATCH v11 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-10 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison Reviewed-by: Andi

[Intel-gfx] [RFC PATCH 00/10] drm/i915: Implement range-based TLB

2023-10-10 Thread Jonathan Cavitt
Implement range-based TLB invalidations on top of GuC-based TLB invalidations. This is the future plan for GuC-based TLB invalidations because it helps improve performance over performing full tlb invalidations all the time. Jonathan Cavitt (7): drm/i915: Add GuC TLB Invalidation device info

[Intel-gfx] [RFC PATCH 03/10] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti --- drivers/gpu/drm/i915/gt/intel_ggtt.c | 34 +++- drivers/gp

[Intel-gfx] [RFC PATCH 09/10] drm/i915: Add generic interface for tlb invalidation

2023-10-10 Thread Jonathan Cavitt
From: Prathap Kumar Valsan This supports selective and full tlb invalidations. When GuC is enabled the tlb invalidations use guc ct otherwise use mmio interface. Signed-off-by: Prathap Kumar Valsan CC: Niranjana Vishwanathapura CC: Fei Yang Signed-off-by: Jonathan Cavitt --- drivers/gpu

[Intel-gfx] [RFC PATCH 10/10] drm/i915: Use selective tlb invalidations where supported

2023-10-10 Thread Jonathan Cavitt
ff-by: Mauro Carvalho Chehab Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/intel_ppgtt.c | 2 +- drivers/gpu/drm/i915/i915_vma.c | 14 +- drivers/gpu/drm/i915/i915_vma.h | 3 ++- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i9

[Intel-gfx] [RFC PATCH 06/10] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-10 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Additionally, increase the default timeout from 10 ms to 20 ms because msleep < 20ms can sleep for up to 20ms. Signed-off-by: Jonat

[Intel-gfx] [RFC PATCH 08/10] drm/i915: Define GuC Based TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
From: Prathap Kumar Valsan The GuC firmware has defined the interface for selective TLB invalidation support. This patch adds routines to interface with GuC. Signed-off-by: Prathap Kumar Valsan CC: Matthew Brost --- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h | 2 + drivers/gpu/drm/i915/g

[Intel-gfx] [RFC PATCH 07/10] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-10 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm

[Intel-gfx] [RFC PATCH 05/10] drm/i915: No TLB invalidation on wedged GT

2023-10-10 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison --- .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 18

[Intel-gfx] [RFC PATCH 02/10] drm/i915/guc: Add CT size delay helper

2023-10-10 Thread Jonathan Cavitt
CT buffer can store. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h index

[Intel-gfx] [RFC PATCH 04/10] drm/i915: No TLB invalidation on suspended GT

2023-10-10 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison --- drivers/gp

[Intel-gfx] [RFC PATCH 01/10] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-10 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915

[Intel-gfx] [RFC PATCH 09/10] drm/i915: Add generic interface for tlb invalidation

2023-10-10 Thread Jonathan Cavitt
From: Prathap Kumar Valsan This supports selective and full tlb invalidations. When GuC is enabled the tlb invalidations use guc ct otherwise use mmio interface. Signed-off-by: Prathap Kumar Valsan CC: Niranjana Vishwanathapura CC: Fei Yang Signed-off-by: Jonathan Cavitt --- drivers/gpu

[Intel-gfx] [RFC PATCH 04/10] drm/i915: No TLB invalidation on suspended GT

2023-10-10 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison --- drivers/gp

[Intel-gfx] [RFC PATCH 10/10] drm/i915: Use selective tlb invalidations where supported

2023-10-10 Thread Jonathan Cavitt
ff-by: Mauro Carvalho Chehab Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/intel_ppgtt.c | 2 +- drivers/gpu/drm/i915/i915_vma.c | 14 +- drivers/gpu/drm/i915/i915_vma.h | 3 ++- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i9

[Intel-gfx] [RFC PATCH 08/10] drm/i915: Define GuC Based TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
From: Prathap Kumar Valsan The GuC firmware has defined the interface for selective TLB invalidation support. This patch adds routines to interface with GuC. Signed-off-by: Prathap Kumar Valsan CC: Matthew Brost --- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h | 2 + drivers/gpu/drm/i915/g

[Intel-gfx] [RFC PATCH 07/10] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-10 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm

[Intel-gfx] [RFC PATCH 03/10] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti --- drivers/gpu/drm/i915/gt/intel_ggtt.c | 34 +++- drivers/gp

[Intel-gfx] [RFC PATCH 02/10] drm/i915/guc: Add CT size delay helper

2023-10-10 Thread Jonathan Cavitt
CT buffer can store. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h index

[Intel-gfx] [RFC PATCH 06/10] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-10 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Additionally, increase the default timeout from 10 ms to 20 ms because msleep < 20ms can sleep for up to 20ms. Signed-off-by: Jonat

[Intel-gfx] [RFC PATCH 05/10] drm/i915: No TLB invalidation on wedged GT

2023-10-10 Thread Jonathan Cavitt
It is not an error for GuC TLB invalidations to fail when the GT is wedged or disabled, so do not process a wait failure as one in guc_send_invalidate_tlb. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison --- .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 18

[Intel-gfx] [PATCH dii-client 1/2] drm/i915: Add generic interface for tlb invalidation

2023-10-10 Thread Jonathan Cavitt
From: Prathap Kumar Valsan This supports selective and full tlb invalidations. When GuC is enabled the tlb invalidations use guc ct otherwise use mmio interface. Signed-off-by: Prathap Kumar Valsan CC: Niranjana Vishwanathapura CC: Fei Yang Signed-off-by: Jonathan Cavitt --- drivers/gpu

[Intel-gfx] [RFC PATCH 01/10] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-10 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915

[Intel-gfx] [PATCH dii-client 2/2] drm/i915: Use selective tlb invalidations where supported

2023-10-10 Thread Jonathan Cavitt
ff-by: Mauro Carvalho Chehab Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/intel_ppgtt.c | 2 +- drivers/gpu/drm/i915/i915_vma.c | 14 +- drivers/gpu/drm/i915/i915_vma.h | 3 ++- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i9

[Intel-gfx] [RFC PATCH 00/10] drm/i915: Implement range-based TLB

2023-10-10 Thread Jonathan Cavitt
Implement range-based TLB invalidations on top of GuC-based TLB invalidations. This is the future plan for GuC-based TLB invalidations because it helps improve performance over performing full tlb invalidations all the time. Jonathan Cavitt (7): drm/i915: Add GuC TLB Invalidation device info

[Intel-gfx] [PATCH v10 6/7] drm/i915/gt: Increase sleep in gt_tlb selftest sanitycheck

2023-10-10 Thread Jonathan Cavitt
For the gt_tlb live selftest, when operating on the GSC engine, increase the timeout from 10 ms to 200 ms because the GSC engine is a bit slower than the rest. Additionally, increase the default timeout from 10 ms to 20 ms because msleep < 20ms can sleep for up to 20ms. Signed-off-by: Jonat

[Intel-gfx] [PATCH v10 3/7] drm/i915: Define and use GuC and CTB TLB invalidation routines

2023-10-10 Thread Jonathan Cavitt
ff-by: Prathap Kumar Valsan Signed-off-by: Bruce Chang Signed-off-by: Chris Wilson Signed-off-by: Umesh Nerlige Ramappa Signed-off-by: Jonathan Cavitt Signed-off-by: Aravind Iddamsetty Signed-off-by: Fei Yang CC: Andi Shyti --- drivers/gpu/drm/i915/gt/intel_ggtt.c | 34 +++- drivers/gp

[Intel-gfx] [PATCH v10 4/7] drm/i915: No TLB invalidation on suspended GT

2023-10-10 Thread Jonathan Cavitt
In case of GT is suspended, don't allow submission of new TLB invalidation request and cancel all pending requests. The TLB entries will be invalidated either during GuC reload or on system resume. Signed-off-by: Fei Yang Signed-off-by: Jonathan Cavitt CC: John Harrison --- drivers/gp

[Intel-gfx] [PATCH v10 2/7] drm/i915/guc: Add CT size delay helper

2023-10-10 Thread Jonathan Cavitt
CT buffer can store. Suggested-by: John Harrison Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h index

[Intel-gfx] [PATCH v10 7/7] drm/i915: Enable GuC TLB invalidations for MTL

2023-10-10 Thread Jonathan Cavitt
Enable GuC TLB invalidations for MTL. Though more platforms than just MTL support GuC TLB invalidations, MTL is presently the only platform that requires it for any purpose, so only enable it there for now to minimize cross-platform impact. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm

[Intel-gfx] [PATCH v10 1/7] drm/i915: Add GuC TLB Invalidation device info flags

2023-10-10 Thread Jonathan Cavitt
Add device info flags for if GuC TLB Invalidation is enabled. Signed-off-by: Jonathan Cavitt --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/intel_device_info.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915

  1   2   3   >