Re: [Intel-gfx] [PATCH] drm/i915: Engine relative MMIO

2019-06-20 Thread Matthew Brost
On Mon, May 13, 2019 at 12:45:52PM -0700, john.c.harri...@intel.com wrote: From: John Harrison With virtual engines, it is no longer possible to know which specific physical engine a given request will be executed on at the time that request is generated. This means that the request itself

Re: [Intel-gfx] [PATCH 1/2] drm/i915/guc: reorder enable/disable communication steps

2019-06-19 Thread Matthew Brost
Chris Wilson Cc: Michal Wajdeczko --- Reviewed-by: Matthew Brost drivers/gpu/drm/i915/intel_guc_ct.c | 15 +++ drivers/gpu/drm/i915/intel_guc_ct.h | 4 drivers/gpu/drm/i915/intel_uc.c | 19 --- 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/drive

Re: [Intel-gfx] [PATCH 1/3] drm/i915/guc: Remove preemption support for current fw

2019-07-08 Thread Matthew Brost
lson Signed-off-by: Daniele Ceraolo Spurio Cc: Chris Wilson Cc: Michal Wajdeczko Cc: Matthew Brost Cc: John Harrison --- drivers/gpu/drm/i915/gem/i915_gem_context.c | 17 -- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 13 -- drivers/gpu/drm/i915/gt/intel_engine_types.h | 1 - drivers/gpu/drm/

Re: [Intel-gfx] [PATCH 2/3] drm/i915/guc: simplify guc client

2019-07-08 Thread Matthew Brost
paths can be considered dead and removed. Signed-off-by: Daniele Ceraolo Spurio Cc: Chris Wilson Cc: Michal Wajdeczko Cc: Matthew Brost Cc: John Harrison --- drivers/gpu/drm/i915/i915_debugfs.c | 3 +- drivers/gpu/drm/i915/intel_guc_submission.c | 73 ++--- drivers/gpu

Re: [Intel-gfx] [PATCH v2] drm/i915/guc: Enable guc logging on guc log relay write

2019-09-17 Thread Matthew Brost
of '1'). Other values flush the log relay as before. v2: Style changes and fix typos. Add guc_log_relay_stop() function. (Daniele) Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Cc: Michal Wajdeczko Signed-off-by: Robert M. Fosha --- drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 53

Re: [Intel-gfx] [PATCH 1/2] drm/i915: drop lrc header page

2019-10-31 Thread Matthew Brost
we can safely drop it. Signed-off-by: Daniele Ceraolo Spurio Cc: Chris Wilson Cc: Michal Wajdeczko Cc: John Harrison Cc: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_lrc.c| 22 +++-- drivers/gpu/drm/i915/gt/intel_lrc.h| 23 ++ drivers/gpu

Re: [Intel-gfx] [PATCH 2/2] drm/i915/guc: drop guc shared area

2019-10-31 Thread Matthew Brost
again, just disable the command for now and add a note that we'll implement it as part of the new flow. [1] https://patchwork.freedesktop.org/patch/295038/ Signed-off-by: Daniele Ceraolo Spurio Cc: Michal Wajdeczko Cc: John Harrison Cc: Matthew Brost Cc: Fernando Pacheco --- drivers/gpu/drm

Re: [Intel-gfx] [PATCH 2/3] drm/i915/guc: Optimized CTB writes and reads

2019-11-21 Thread Matthew Brost
On Thu, Nov 21, 2019 at 12:58:50PM +0100, Michal Wajdeczko wrote: On Thu, 21 Nov 2019 00:56:03 +0100, wrote: From: Matthew Brost CTB writes are now in the path of command submission and should be optimized for performance. Rather than reading CTB descriptor values (e.g. head, tail, size

Re: [Intel-gfx] [PATCH 3/3] drm/i915/guc: Increase size of CTB buffers

2019-11-21 Thread Matthew Brost
On Thu, Nov 21, 2019 at 01:25:05PM +0100, Michal Wajdeczko wrote: On Thu, 21 Nov 2019 00:56:04 +0100, wrote: From: Matthew Brost With the introduction of non-blocking CTBs more than one CTB can be in flight at a time. Increasing the size of the CTBs should reduce how often software hits

Re: [Intel-gfx] [PATCH 1/3] drm/i915/guc: Add non blocking CTB send function

2019-11-21 Thread Matthew Brost
On Thu, Nov 21, 2019 at 12:43:26PM +0100, Michal Wajdeczko wrote: On Thu, 21 Nov 2019 00:56:02 +0100, wrote: From: Matthew Brost Add non blocking CTB send fuction, intel_guc_send_nb. In order to support a non blocking CTB send fuction a spin lock is needed to 2x typos protect the CTB

Re: [Intel-gfx] [PATCH 1/3] drm/i915/guc: Add non blocking CTB send function

2019-11-21 Thread Matthew Brost
On Thu, Nov 21, 2019 at 04:13:25PM -0800, Matthew Brost wrote: On Thu, Nov 21, 2019 at 12:43:26PM +0100, Michal Wajdeczko wrote: On Thu, 21 Nov 2019 00:56:02 +0100, wrote: From: Matthew Brost Add non blocking CTB send fuction, intel_guc_send_nb. In order to support a non blocking CTB send

Re: [Intel-gfx] [PATCH 2/3] drm/i915/guc: Optimized CTB writes and reads

2019-11-21 Thread Matthew Brost
On Thu, Nov 21, 2019 at 07:56:07AM -0800, Matthew Brost wrote: On Thu, Nov 21, 2019 at 12:58:50PM +0100, Michal Wajdeczko wrote: On Thu, 21 Nov 2019 00:56:03 +0100, wrote: From: Matthew Brost CTB writes are now in the path of command submission and should be optimized for performance

Re: [Intel-gfx] [RFC 3/5] drm/i915: split out virtual engine code

2019-12-11 Thread Matthew Brost
On Wed, Dec 11, 2019 at 01:34:20PM -0800, Daniele Ceraolo Spurio wrote: On 12/11/19 1:22 PM, Chris Wilson wrote: Quoting Daniele Ceraolo Spurio (2019-12-11 21:12:42) Having the virtual engine handling in its own file will make it easier call it from or modify for the GuC implementation

Re: [Intel-gfx] [RFC 1/5] drm/i915: introduce logical_ring and lr_context naming

2019-12-11 Thread Matthew Brost
: Tvrtko Ursulin Cc: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_lrc.c| 154 ++--- drivers/gpu/drm/i915/gt/selftest_lrc.c | 12 +- 2 files changed, 93 insertions(+), 73 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.

Re: [Intel-gfx] [PATCH 20/27] drm/i915: Remove logical HW ID

2019-09-25 Thread Matthew Brost
On Wed, Sep 25, 2019 at 10:59:32AM -0700, Daniele Ceraolo Spurio wrote: + Matt I've reviewed this patch and this affects some of the work I'm doing on the new GuC interface. For the new GuC interface I have two patches that rework the HW ID assignment. The first patch moves ownership of the

Re: [Intel-gfx] [PATCH] drm/i915/guc: Stop using mutex while sending CTB messages

2020-01-31 Thread Matthew Brost
On Fri, Jan 31, 2020 at 03:33:55PM +, Chris Wilson wrote: Quoting Michal Wajdeczko (2020-01-31 14:58:34) While we are always using CT "send" buffer to send request messages to GuC, we usually don't ask GuC to use CT "receive" buffer to send back response messages, since almost all returned

Re: [Intel-gfx] [RFC 0/6] Start separating GuC and execlists submission

2020-01-28 Thread Matthew Brost
.org/series/72031/ [2] https://patchwork.freedesktop.org/series/70787/ Cc: Chris Wilson Cc: Michal Wajdeczko Cc: John Harrison Cc: Matthew Brost Daniele Ceraolo Spurio (6): drm/i915/guc: Add guc-specific breadcrumb functions drm/i915/guc: Add request_alloc for guc_submission drm/i915/guc:

Re: [Intel-gfx] [PATCH 36/56] drm/i915: Fair low-latency scheduling

2021-01-07 Thread Matthew Brost
On Thu, Jan 07, 2021 at 04:45:31PM +, Chris Wilson wrote: > Quoting Matthew Brost (2021-01-07 16:05:07) > > On Tue, Dec 29, 2020 at 12:01:25PM +, Chris Wilson wrote: > > > The first "scheduler" was a topographical sorting of requests into > > >

Re: [Intel-gfx] [PATCH] drm/i915/gt: Drain the breadcrumbs just once

2020-12-17 Thread Matthew Brost
On Thu, Dec 17, 2020 at 09:15:24AM +, Chris Wilson wrote: > Matthew Brost pointed out that the while-loop on a shared breadcrumb was > inherently fraught with danger as it competed with the other users of > the breadcrumbs. However, in order to completely drain the re-arming irq

Re: [Intel-gfx] [PATCH 13/20] drm/i915: Encode fence specific waitqueue behaviour into the wait.flags

2020-12-10 Thread Matthew Brost
; > Signed-off-by: Chris Wilson Reviewed-by: Matthew Brost > --- > drivers/gpu/drm/i915/i915_sw_fence.c | 25 +++-- > 1 file changed, 15 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_sw_fence.c > b/drivers/gpu/drm/i915/

Re: [Intel-gfx] [PATCH 12/20] drm/i915/gt: Track the overall awake/busy time

2020-12-10 Thread Matthew Brost
*/ > + ktime_t start; > + } stats; > + > struct intel_engine_cs *engine[I915_NUM_ENGINES]; > struct intel_engine_cs *engine_class[MAX_ENGINE_CLASS + 1] > [MAX_ENGINE_INSTANCE + 1]; > diff --git a

Re: [Intel-gfx] [PATCH 01/21] drm/i915/gt: Mark legacy ring context as lost

2020-12-10 Thread Matthew Brost
On Thu, Dec 10, 2020 at 08:02:20AM +, Chris Wilson wrote: > When we reset the legacy ring context, due to potential corruption over > suspend/resume, remove the valid bit so that we avoid loading garbage. > > Signed-off-by: Chris Wilson Reviewed-by: Matthew Brost > --- >

Re: [Intel-gfx] [PATCH 06/20] drm/i915/gt: Remove virtual breadcrumb before transfer

2020-12-10 Thread Matthew Brost
epped out > of the lists. > > Signed-off-by: Chris Wilson Makes sense to me. Reviewed-by: Matthew Brost > --- > drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 5 +++-- > drivers/gpu/drm/i915/gt/intel_lrc.c | 15 +++ > 2 files changed, 18 insertions(+), 2 d

Re: [Intel-gfx] [PATCH 18/21] drm/i915/gt: Add timeline "mode"

2020-12-10 Thread Matthew Brost
On Thu, Dec 10, 2020 at 08:02:37AM +, Chris Wilson wrote: > Explicitly differentiate between the absolute and relative timelines, > and the global HWSP and ppHWSP relative offsets. When using a timeline > that is relative to a known status page, we can replace the absolute > addressing in the

Re: [Intel-gfx] [PATCH 07/20] drm/i915/gt: Shrink the critical section for irq signaling

2020-12-10 Thread Matthew Brost
while (atomic_read(>breadcrumbs->signaler_active)) > + cpu_relax(); Would a 'cond_resched' be better here? I trust your opinion on which to use but thought I'd mention it. With that: Reviewed-by: Matthew Brost > } > > if (RE

Re: [Intel-gfx] [PATCH 15/21] drm/i915/gt: Track all timelines created using the HWSP

2020-12-10 Thread Matthew Brost
t; and so we can then reset all seqno values by walking that list. > > Signed-off-by: Chris Wilson Reviewed-by: Matthew Brost > --- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 9 - > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 6 > drivers/gpu/drm/i915

Re: [Intel-gfx] [PATCH 12/21] drm/i915/gem: Drop free_work for GEM contexts

2020-12-10 Thread Matthew Brost
935ed5339c4 > ("drm/i915: Remove logical HW ID"). As we can now free the GEM context > immediately from any context, remove the deferral of the free_list > > v2: Lift removing the context from the global list into close(). > > Suggested-by: Mika Kuoppala > Signed-off-by

Re: [Intel-gfx] [PATCH 19/21] drm/i915/gt: Use indices for writing into relative timelines

2020-12-10 Thread Matthew Brost
On Thu, Dec 10, 2020 at 08:02:38AM +, Chris Wilson wrote: > Relative timelines are relative to either the global or per-process > HWSP, and so we can replace the absolute addressing with store-index > variants for position invariance. > Can you explain the benifit of relative addressing? Why

Re: [Intel-gfx] [PATCH 21/21] drm/i915/gt: Use ppHWSP for unshared non-semaphore related timelines

2020-12-10 Thread Matthew Brost
relocate them. > Reviewed-by: Matthew Brost > Signed-off-by: Chris Wilson > Cc: Joonas Lahtinen > --- > .../drm/i915/gt/intel_execlists_submission.c | 37 +++ > 1 file changed, 22 insertions(+), 15 deletions(-) > > diff --git a/drivers/gpu/drm/i915/g

Re: [Intel-gfx] [PATCH 18/21] drm/i915/gt: Add timeline "mode"

2020-12-10 Thread Matthew Brost
On Thu, Dec 10, 2020 at 09:00:53PM +, Chris Wilson wrote: > Quoting Matthew Brost (2020-12-10 19:28:06) > > On Thu, Dec 10, 2020 at 08:02:37AM +, Chris Wilson wrote: > > > diff --git a/drivers/gpu/drm/i915/gt/intel_timeline_types.h > > > b/drivers/gpu/drm/i91

Re: [Intel-gfx] [PATCH 17/21] drm/i915/gt: Track timeline GGTT offset separately from subpage offset

2020-12-10 Thread Matthew Brost
the context state, we may not necessarily use a position > within the first page and so need more than 12b. > > Signed-off-by: Chris Wilson Reviewed-by: Matthew Brost > --- > drivers/gpu/drm/i915/gt/gen6_engine_cs.c | 4 ++-- > drivers/gpu/drm/i915/gt/gen8_engine_cs.

Re: [Intel-gfx] [PATCH 19/21] drm/i915/gt: Use indices for writing into relative timelines

2020-12-10 Thread Matthew Brost
On Thu, Dec 10, 2020 at 09:05:44PM +, Chris Wilson wrote: > Quoting Matthew Brost (2020-12-10 19:16:44) > > On Thu, Dec 10, 2020 at 08:02:38AM +, Chris Wilson wrote: > > > Relative timelines are relative to either the global or per-process > > > HWSP, and so

Re: [Intel-gfx] [PATCH v4 02/61] drm/i915: Add missing -EDEADLK handling to execbuf pinning

2020-10-20 Thread Matthew Brost
On Fri, Oct 16, 2020 at 12:43:45PM +0200, Maarten Lankhorst wrote: > i915_vma_pin may fail with -EDEADLK when we start locking page tables, > so ensure we handle this correctly. > > Signed-off-by: Maarten Lankhorst > --- > .../gpu/drm/i915/gem/i915_gem_execbuffer.c| 23 +++ >

Re: [Intel-gfx] [PATCH] drm/i915/guc: skip disabling CTBs before sanitizing the GuC

2020-10-22 Thread Matthew Brost
> the CTB registration, so there is still no need to explicitly do so. > > References: https://gitlab.freedesktop.org/drm/intel/-/issues/2469 > Signed-off-by: Daniele Ceraolo Spurio Looks good to me. Reviewed-by: Matthew Brost > Cc: Michal Wajdeczko > Cc: Matthew

Re: [Intel-gfx] [PATCH 36/56] drm/i915: Fair low-latency scheduling

2021-01-07 Thread Matthew Brost
On Tue, Dec 29, 2020 at 12:01:25PM +, Chris Wilson wrote: > The first "scheduler" was a topographical sorting of requests into > priority order. The execution order was deterministic, the earliest > submitted, highest priority request would be executed first. Priority > inheritance ensured

Re: [Intel-gfx] [PATCH 20/41] drm/i915: Replace priolist rbtree with a skiplist

2021-01-28 Thread Matthew Brost
On Mon, Jan 25, 2021 at 02:01:15PM +, Chris Wilson wrote: > Replace the priolist rbtree with a skiplist. The crucial difference is > that walking and removing the first element of a skiplist is O(1), but > O(lgN) for an rbtree, as we need to rebalance on remove. This is a > hindrance for

Re: [Intel-gfx] [PATCH 00/13] Update firmware to v62.0.0

2021-06-11 Thread Matthew Brost
On Thu, Jun 10, 2021 at 03:35:57PM +0200, Michal Wajdeczko wrote: > > > On 10.06.2021 06:36, Matthew Brost wrote: > > As part of enabling GuC submission [1] we need to update to the latest > > and greatest firmware. This series does that. This is a destructive > &g

Re: [Intel-gfx] [PATCH 07/13] drm/i915/guc: New definition of the CTB registration action

2021-06-11 Thread Matthew Brost
On Thu, Jun 10, 2021 at 03:19:50PM +0200, Michal Wajdeczko wrote: > > > On 10.06.2021 06:38, Matthew Brost wrote: > > On Wed, Jun 09, 2021 at 10:07:21PM +0200, Michal Wajdeczko wrote: > >> > >> > >> On 09.06.2021 19:36, John Harrison wrote: > >&g

Re: [Intel-gfx] [PATCH 00/13] Update firmware to v62.0.0

2021-06-11 Thread Matthew Brost
On Mon, Jun 07, 2021 at 03:19:11PM -0700, Daniele Ceraolo Spurio wrote: > > > On 6/7/2021 11:03 AM, Matthew Brost wrote: > > As part of enabling GuC submission [1] we need to update to the latest > > and greatest firmware. This series does that. This is a destructive > &g

[Intel-gfx] [PATCH 4/8] drm/i915: Move active tracking to i915_sched_engine

2021-06-15 Thread Matthew Brost
Move active request tracking and its lock to i915_sched_engine. This lock is also the submission lock so having it in the i915_sched_engine is the correct place. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH 7/8] drm/i915: Update i915_scheduler to operate on i915_sched_engine

2021-06-15 Thread Matthew Brost
Rather passing around an intel_engine_cs in the scheduling code, pass around a i915_sched_engine. v3: (Jason Ekstrand) Add READ_ONCE around rq->engine in lock_sched_engine Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- .../drm/i915/gt/intel_execlists_submission.c |

[Intel-gfx] [PATCH 1/8] drm/i915: Move priolist to new i915_sched_engine object

2021-06-15 Thread Matthew Brost
object. v3: (Jason Ekstrand) Update comment next to intel_engine_cs.virtual Add kernel doc (Checkpatch) Fix double the in commit message v4: (Daniele) Update comment message. Add comment about subclass field Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio

[Intel-gfx] [PATCH 2/8] drm/i915: Add i915_sched_engine_is_empty function

2021-06-15 Thread Matthew Brost
Add wrapper function around RB tree to determine if i915_sched_engine is empty. Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 2 +- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 6 +++--- drivers/gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 6/8] drm/i915: Add kick_backend function to i915_sched_engine

2021-06-15 Thread Matthew Brost
Not all back-ends require a kick after a scheduling update, so make the kick a call-back function that the back-end can opt-in to. Also move the current kick function from the scheduler to the execlists file as it is specific to that back-end. Signed-off-by: Matthew Brost Reviewed-by: Daniele

[Intel-gfx] [PATCH 0/8] Introduce i915_sched_engine object

2021-06-15 Thread Matthew Brost
(Matthew Brost): - Drop wrapper functions for tasklet as eventually tasklet will be dropped v3: (Jason Ekstrand) - Address his comments, change logs in individual patches - Squash documentation patch into previous patches as needed (Checkpatch) - Fix warnings (Docs) - Fix warnings

[Intel-gfx] [PATCH 5/8] drm/i915: Move engine->schedule to i915_sched_engine

2021-06-15 Thread Matthew Brost
The schedule function should be in the schedule object. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 3 --- drivers

[Intel-gfx] [PATCH 3/8] drm/i915: Reset sched_engine.no_priolist immediately after dequeue

2021-06-15 Thread Matthew Brost
Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_pm.c| 2 -- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 1 + drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c| 2 ++ drivers/gpu/drm/i915/i915_scheduler.h| 7

[Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-15 Thread Matthew Brost
(CI) Rebase and fix build error Signed-off-by: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_engine.h| 14 drivers/gpu/drm/i915/gt/intel_engine_cs.c | 12 +-- drivers/gpu/drm/i915/gt/intel_engine_types.h | 5 -- .../drm/i915/gt/intel_execlists_submission.c |

[Intel-gfx] [PATCH 1/3] drm/i915/guc: Introduce unified HXG messages

2021-06-14 Thread Matthew Brost
From: Michal Wajdeczko New GuC firmware will unify format of MMIO and CTB H2G messages. Introduce their definitions now to allow gradual transition of our code to match new changes. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Michał Winiarski Reviewed-by: Daniele Ceraolo

[Intel-gfx] [PATCH 2/3] drm/i915/guc: Update firmware to v62.0.0

2021-06-14 Thread Matthew Brost
From: Michal Wajdeczko Most of the changes to the 62.0.0 firmware revolved around CTB communication channel. Conform to the new (stable) CTB protocol. Signed-off-by: John Harrison Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost --- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h

[Intel-gfx] [PATCH 0/3] Update firmware to v62.0.0

2021-06-14 Thread Matthew Brost
: Address comments, looking for remaning RBs so patches can be squashed and sent for CI v3: Delete a few unused defines, squash patches Signed-off-by: Matthew Brost [1] https://patchwork.freedesktop.org/series/89844 [2] https://patchwork.freedesktop.org/series/91341 Michal Wajdeczko (3): drm/i915

[Intel-gfx] [PATCH 3/3] drm/i915/doc: Include GuC ABI documentation

2021-06-14 Thread Matthew Brost
From: Michal Wajdeczko GuC ABI documentation is now ready to be included in i915.rst Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski Reviewed-by: Matthew Brost --- Documentation/gpu/i915.rst | 8 1 file changed, 8 insertions(+) diff --git

[Intel-gfx] [PATCH 3/3] drm/i915/doc: Include GuC ABI documentation

2021-06-15 Thread Matthew Brost
From: Michal Wajdeczko GuC ABI documentation is now ready to be included in i915.rst Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski Reviewed-by: Matthew Brost --- Documentation/gpu/i915.rst | 8 1 file changed, 8 insertions(+) diff --git

[Intel-gfx] [PATCH 2/3] drm/i915/guc: Update firmware to v62.0.0

2021-06-15 Thread Matthew Brost
-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost --- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h | 107 ++ .../gt/uc/abi/guc_communication_ctb_abi.h | 126 +-- .../gt/uc/abi/guc_communication_mmio_abi.h| 65 ++-- drivers/gpu/drm/i915/gt/uc/intel_guc.c| 107

[Intel-gfx] [PATCH 1/3] drm/i915/guc: Introduce unified HXG messages

2021-06-15 Thread Matthew Brost
From: Michal Wajdeczko New GuC firmware will unify format of MMIO and CTB H2G messages. Introduce their definitions now to allow gradual transition of our code to match new changes. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Michał Winiarski Reviewed-by: Daniele Ceraolo

[Intel-gfx] [PATCH 0/3] Update firmware to v62.0.0

2021-06-15 Thread Matthew Brost
: Address comments, looking for remaning RBs so patches can be squashed and sent for CI v3: Delete a few unused defines, squash patches v4: Add values back into kernel doc, fix docs warning Signed-off-by: Matthew Brost [1] https://patchwork.freedesktop.org/series/89844 [2] https

[Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-15 Thread Matthew Brost
off-by: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_engine.h| 14 drivers/gpu/drm/i915/gt/intel_engine_cs.c | 12 +-- drivers/gpu/drm/i915/gt/intel_engine_types.h | 5 -- .../drm/i915/gt/intel_execlists_submission.c | 84 ++- drivers/gpu/drm/i915/gt/mock_engin

[Intel-gfx] [PATCH 1/8] drm/i915: Move priolist to new i915_sched_engine object

2021-06-15 Thread Matthew Brost
object. v3: (Jason Ekstrand) Update comment next to intel_engine_cs.virtual Add kernel doc (Checkpatch) Fix double the in commit message v4: (Daniele) Update comment message. Add comment about subclass field Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio

[Intel-gfx] [PATCH 5/8] drm/i915: Move engine->schedule to i915_sched_engine

2021-06-15 Thread Matthew Brost
The schedule function should be in the schedule object. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 3 --- drivers

[Intel-gfx] [PATCH 7/8] drm/i915: Update i915_scheduler to operate on i915_sched_engine

2021-06-15 Thread Matthew Brost
Rather passing around an intel_engine_cs in the scheduling code, pass around a i915_sched_engine. v3: (Jason Ekstrand) Add READ_ONCE around rq->engine in lock_sched_engine Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- .../drm/i915/gt/intel_execlists_submission.c |

[Intel-gfx] [PATCH 3/8] drm/i915: Reset sched_engine.no_priolist immediately after dequeue

2021-06-15 Thread Matthew Brost
Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_pm.c| 2 -- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 1 + drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c| 2 ++ drivers/gpu/drm/i915/i915_scheduler.h| 7

[Intel-gfx] [PATCH 4/8] drm/i915: Move active tracking to i915_sched_engine

2021-06-15 Thread Matthew Brost
Move active request tracking and its lock to i915_sched_engine. This lock is also the submission lock so having it in the i915_sched_engine is the correct place. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH 6/8] drm/i915: Add kick_backend function to i915_sched_engine

2021-06-15 Thread Matthew Brost
Not all back-ends require a kick after a scheduling update, so make the kick a call-back function that the back-end can opt-in to. Also move the current kick function from the scheduler to the execlists file as it is specific to that back-end. Signed-off-by: Matthew Brost Reviewed-by: Daniele

[Intel-gfx] [PATCH 2/8] drm/i915: Add i915_sched_engine_is_empty function

2021-06-15 Thread Matthew Brost
Add wrapper function around RB tree to determine if i915_sched_engine is empty. Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 2 +- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 6 +++--- drivers/gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 0/8] Introduce i915_sched_engine object

2021-06-15 Thread Matthew Brost
(Matthew Brost): - Drop wrapper functions for tasklet as eventually tasklet will be dropped v3: (Jason Ekstrand) - Address his comments, change logs in individual patches - Squash documentation patch into previous patches as needed (Checkpatch) - Fix warnings (Docs) - Fix warnings

Re: [Intel-gfx] [PATCH i-g-t 1/2] tests/i915/query: Query, parse and validate the hwconfig table

2021-06-14 Thread Matthew Brost
N_KB] = "RAMBO L3 bank size (in > KB)", > + [INTEL_HWCONFIG_SLM_SIZE_PER_SS_IN_KB] = "SLM size per SS (in KB)", > +}; > + > +static void query_parse_and_validate_hwconfig_table(int i915) > +{ > + uint32_t *data; > + int i = 0; > + int

Re: [Intel-gfx] [PATCH i-g-t 2/2] tests/i915/query: Add test for L3 bank count

2021-06-14 Thread Matthew Brost
m_i915_query_item query = { > + .query_id = DRM_I915_QUERY_L3_BANK_COUNT, > + }; I believe you could just one of the local variables, right? I see the comparison for 'query.length == size.length' but you store the length a u32 rather than a struct. Just a suggestion

Re: [Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-14 Thread Matthew Brost
On Mon, Jun 14, 2021 at 06:05:19PM -0700, Daniele Ceraolo Spurio wrote: > > > On 6/8/2021 12:17 PM, Matthew Brost wrote: > > The submission tasklet operates on i915_sched_engine, thus it is the > > correct place for it. > > > > v3: > > (Jason Ekstr

[Intel-gfx] [PATCH 1/8] drm/i915: Move priolist to new i915_sched_engine object

2021-06-08 Thread Matthew Brost
direction. This patch starts the aforementioned transition by moving the priolist into the i915_sched_engine object. v3: (Jason Ekstrand) Update comment next to intel_engine_cs.virtual Add kernel doc (Checkpatch) Fix double the in commit message Signed-off-by: Matthew Brost

[Intel-gfx] [PATCH 0/8] Introduce i915_sched_engine object

2021-06-08 Thread Matthew Brost
(Matthew Brost): - Drop wrapper functions for tasklet as eventually tasklet will be dropped v3: (Jason Ekstrand) - Address his comments, change logs in individual patches - Squash documentation patch into previous patches as needed (Checkpatch) - Fix warnings (Docs) - Fix warnings

[Intel-gfx] [PATCH 3/8] drm/i915: Reset sched_engine.no_priolist immediately after dequeue

2021-06-08 Thread Matthew Brost
Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_pm.c| 2 -- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 1 + drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c| 2 ++ drivers/gpu/drm/i915/i915_scheduler.h| 7

[Intel-gfx] [PATCH 6/8] drm/i915: Add kick_backend function to i915_sched_engine

2021-06-08 Thread Matthew Brost
Rather than touching execlist specific structures in the generic scheduling code, add a callback function in the backend. Signed-off-by: Matthew Brost --- .../drm/i915/gt/intel_execlists_submission.c | 52 drivers/gpu/drm/i915/i915_scheduler.c | 62

[Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-08 Thread Matthew Brost
The submission tasklet operates on i915_sched_engine, thus it is the correct place for it. v3: (Jason Ekstrand) Change sched_engine->engine to a void* private data pointer Add kernel doc Signed-off-by: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_engine.h| 14 --- drivers/

[Intel-gfx] [PATCH 7/8] drm/i915: Update i915_scheduler to operate on i915_sched_engine

2021-06-08 Thread Matthew Brost
Rather passing around an intel_engine_cs in the scheduling code, pass around a i915_sched_engine. v3: (Jason Ekstrand) Add READ_ONCE around rq->engine in lock_sched_engine Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- .../drm/i915/gt/intel_execlists_submission.c |

[Intel-gfx] [PATCH 2/8] drm/i915: Add i915_sched_engine_is_empty function

2021-06-08 Thread Matthew Brost
Add wrapper function around RB tree to determine if i915_sched_engine is empty. Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 2 +- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 6 +++--- drivers/gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 5/8] drm/i915: Move engine->schedule to i915_sched_engine

2021-06-08 Thread Matthew Brost
The schedule function should be in the schedule object. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost --- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 3 --- drivers/gpu/drm/i915/gt

[Intel-gfx] [PATCH 4/8] drm/i915: Move active tracking to i915_sched_engine

2021-06-08 Thread Matthew Brost
Move active request tracking and its lock to i915_sched_engine. This lock is also the submission lock so having it in the i915_sched_engine is the correct place. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost --- drivers/gpu/drm/i915/gt/intel_engine.h| 2

Re: [Intel-gfx] [RFC PATCH 36/97] drm/i915/guc: Add non blocking CTB send function

2021-06-07 Thread Matthew Brost
On Thu, May 27, 2021 at 04:11:50PM +0100, Tvrtko Ursulin wrote: > > On 27/05/2021 15:35, Matthew Brost wrote: > > On Thu, May 27, 2021 at 11:02:24AM +0100, Tvrtko Ursulin wrote: > > > > > > On 26/05/2021 19:10, Matthew Brost wrote: > > > > >

Re: [Intel-gfx] [PATCH 13/13] drm/i915/guc: Update firmware to v62.0.0

2021-06-07 Thread Matthew Brost
On Mon, Jun 07, 2021 at 11:03:55AM -0700, Matthew Brost wrote: > From: John Harrison > > Signed-off-by: John Harrison > Signed-off-by: Michal Wajdeczko > Signed-off-by: Matthew Brost Reviewed-by: Matthew Brost > --- > drivers/gpu/drm/i915/gt/

Re: [Intel-gfx] [PATCH 09/13] drm/i915/doc: Include GuC ABI documentation

2021-06-07 Thread Matthew Brost
On Mon, Jun 07, 2021 at 09:38:58PM +0200, Michal Wajdeczko wrote: > > > On 07.06.2021 19:45, Matthew Brost wrote: > > On Mon, Jun 07, 2021 at 11:03:51AM -0700, Matthew Brost wrote: > >> From: Michal Wajdeczko > >> > >> GuC ABI documentati

Re: [Intel-gfx] [PATCH 10/13] drm/i915/guc: Kill guc_clients.ct_pool

2021-06-07 Thread Matthew Brost
On Mon, Jun 07, 2021 at 11:03:52AM -0700, Matthew Brost wrote: > From: Michal Wajdeczko > > CTB pool is now maintained internally by the GuC as part of its > "private data". No need to allocate separate buffer and pass it > to GuC as yet another ADS. > > Si

[Intel-gfx] [PATCH 05/13] drm/i915/guc: Add flag for mark broken CTB

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko Once CTB descriptor is found in error state, either set by GuC or us, there is no need continue checking descriptor any more, we can rely on our internal flag. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Piotr Piórkowski Reviewed-by: Matthew Brost

[Intel-gfx] [PATCH 01/13] drm/i915/guc: Introduce unified HXG messages

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko New GuC firmware will unify format of MMIO and CTB H2G messages. Introduce their definitions now to allow gradual transition of our code to match new changes. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Michał Winiarski --- .../gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 02/13] drm/i915/guc: Update MMIO based communication

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko The MMIO based Host-to-GuC communication protocol has been updated to use unified HXG messages. Update our intel_guc_send_mmio() function by correctly handle BUSY, RETRY and FAILURE replies. Also update our documentation. GuC: 55.0.0 Signed-off-by: Matthew Brost Signed

[Intel-gfx] [PATCH 03/13] drm/i915/guc: Update CTB response status definition

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko Format of the STATUS dword in CTB response message now follows definition of the HXG header. Update our code and remove any obsolete legacy definitions. GuC: 55.0.0 Signed-off-by: Michal Wajdeczko Acked-by: Piotr Piórkowski --- drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c

[Intel-gfx] [PATCH 04/13] drm/i915/guc: Support per context scheduling policies

2021-06-07 Thread Matthew Brost
From: John Harrison GuC firmware v53.0.0 introduced per context scheduling policies. This includes changes to some of the ADS structures which are required to load the firmware even if not using GuC submission. Signed-off-by: John Harrison Signed-off-by: Matthew Brost Reviewed-by: Matthew

Re: [Intel-gfx] [PATCH 12/13] drm/i915/guc: Unified GuC log

2021-06-07 Thread Matthew Brost
On Mon, Jun 07, 2021 at 11:03:54AM -0700, Matthew Brost wrote: > From: John Harrison > > GuC v57 unified the 'DPC' and 'ISR' buffers into a single buffer with > the option for it to be larger. > > Signed-off-by: Matthew Brost Reviewed-by: Matthew Brost > Signed-off-by

Re: [Intel-gfx] [PATCH 09/13] drm/i915/doc: Include GuC ABI documentation

2021-06-07 Thread Matthew Brost
On Mon, Jun 07, 2021 at 11:03:51AM -0700, Matthew Brost wrote: > From: Michal Wajdeczko > > GuC ABI documentation is now ready to be included in i915.rst > > Signed-off-by: Michal Wajdeczko > Signed-off-by: Matthew Brost > Cc: Piotr Piórkowski Michal - I noticed whil

[Intel-gfx] [PATCH 11/13] drm/i915/guc: Kill ads.client_info

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko New GuC does not require it any more. Reviewed-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Piotr Piórkowski --- drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 7 --- drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h | 8 +--- 2 files changed, 1 insertion

[Intel-gfx] [PATCH 10/13] drm/i915/guc: Kill guc_clients.ct_pool

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko CTB pool is now maintained internally by the GuC as part of its "private data". No need to allocate separate buffer and pass it to GuC as yet another ADS. Signed-off-by: Matthew Brost #v4 Signed-off-by: Michal Wajdeczko Cc: Janusz Krzysztofik --- drivers/gp

[Intel-gfx] [PATCH 06/13] drm/i915/guc: New definition of the CTB descriptor

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko Definition of the CTB descriptor has changed, leaving only minimal shared fields like HEAD/TAIL/STATUS. Both HEAD and TAIL are now in dwords. Add some ABI documentation and implement required changes. Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost

[Intel-gfx] [PATCH 07/13] drm/i915/guc: New definition of the CTB registration action

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko Definition of the CTB registration action has changed. Add some ABI documentation and implement required changes. Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski #4 --- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h | 107

[Intel-gfx] [PATCH 08/13] drm/i915/guc: New CTB based communication

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko Format of the CTB messages has changed: - support for multiple formats - message fence is now part of the header - reuse of unified HXG message formats Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski --- .../gt/uc/abi

[Intel-gfx] [PATCH 00/13] Update firmware to v62.0.0

2021-06-07 Thread Matthew Brost
into a single patch for merging. Signed-off-by: Matthew Brost [1] https://patchwork.freedesktop.org/series/89844/ John Harrison (3): drm/i915/guc: Support per context scheduling policies drm/i915/guc: Unified GuC log drm/i915/guc: Update firmware to v62.0.0 Michal Wajdeczko (10): drm/i915/guc

[Intel-gfx] [PATCH 12/13] drm/i915/guc: Unified GuC log

2021-06-07 Thread Matthew Brost
From: John Harrison GuC v57 unified the 'DPC' and 'ISR' buffers into a single buffer with the option for it to be larger. Signed-off-by: Matthew Brost Signed-off-by: John Harrison Cc: Alan Previn --- drivers/gpu/drm/i915/gt/uc/intel_guc.c | 15 --- drivers/gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 13/13] drm/i915/guc: Update firmware to v62.0.0

2021-06-07 Thread Matthew Brost
From: John Harrison Signed-off-by: John Harrison Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost --- drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 26 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c

[Intel-gfx] [PATCH 09/13] drm/i915/doc: Include GuC ABI documentation

2021-06-07 Thread Matthew Brost
From: Michal Wajdeczko GuC ABI documentation is now ready to be included in i915.rst Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski --- Documentation/gpu/i915.rst | 8 1 file changed, 8 insertions(+) diff --git a/Documentation/gpu/i915.rst b

[Intel-gfx] [PATCH 05/13] drm/i915/guc: Add flag for mark broken CTB

2021-06-09 Thread Matthew Brost
From: Michal Wajdeczko Once CTB descriptor is found in error state, either set by GuC or us, there is no need continue checking descriptor any more, we can rely on our internal flag. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Piotr Piórkowski --- drivers/gpu/drm/i915

[Intel-gfx] [PATCH 01/13] drm/i915/guc: Introduce unified HXG messages

2021-06-09 Thread Matthew Brost
From: Michal Wajdeczko New GuC firmware will unify format of MMIO and CTB H2G messages. Introduce their definitions now to allow gradual transition of our code to match new changes. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Michał Winiarski --- .../gpu/drm/i915/gt/uc

[Intel-gfx] [PATCH 08/13] drm/i915/guc: New CTB based communication

2021-06-09 Thread Matthew Brost
From: Michal Wajdeczko Format of the CTB messages has changed: - support for multiple formats - message fence is now part of the header - reuse of unified HXG message formats v2: (Daniele) - Better comment in ct_write() Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc

  1   2   3   4   5   6   7   8   9   10   >