Re: [PATCH] drm/i915/selftests: keep same cache settings as timeline

2023-03-17 Thread Matt Roper
o emulate the behavior of the timeline > >> anyway. > >> > >> Signed-off-by: Fei Yang > > > > It looks like there might be an indentation mistake on the second line > > of the i915_gem_object_pin_map_unlocked() call, but we can fix that up > > w

Re: [PATCH] drm/i915/selftests: keep same cache settings as timeline

2023-03-16 Thread Matt Roper
ks like there might be an indentation mistake on the second line of the i915_gem_object_pin_map_unlocked() call, but we can fix that up while applying; no need to re-send. Reviewed-by: Matt Roper Is there an FDO issue # for the random failures thar were being seen? If so, we should

Re: [Intel-gfx] [PATCH 3/3] drm/i915/dg1: Move Wa_1806527549 to the right function

2023-03-06 Thread Matt Roper
tatic void dg1_ctx_workarounds_init(struct > intel_engine_cs *engine, > /* Wa_22010493298 */ > wa_masked_en(wal, HIZ_CHICKEN, >DG1_HZ_READ_SUPPRESSION_OPTIMIZATION_DISABLE); > + > + /* Wa_1806527549 */ > + wa_masked_en(wal, HIZ_CHICKEN, HZ_DEPTH_TEST_LE_GE_OPT_DISABLE); > } > >

Re: [Intel-gfx] [PATCH 2/3] drm/i915: Move DG2 tuning to the right function

2023-03-06 Thread Matt Roper
On Mon, Mar 06, 2023 at 12:49:53PM -0800, Lucas De Marchi wrote: > Use gt_tuning_settings() for the recommended tunings rather than the one > for workarounds. > > Signed-off-by: Lucas De Marchi Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 1

Re: [Intel-gfx] [PATCH 1/3] drm/i915: Remove redundant check for DG1

2023-03-06 Thread Matt Roper
On Mon, Mar 06, 2023 at 12:49:52PM -0800, Lucas De Marchi wrote: > dg1_gt_workarounds_init() is only ever called for DG1, so there is no > point checking it again. > > Signed-off-by: Lucas De Marchi Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_

Re: [PATCH v2] drm/i915/mtl: Apply Wa_14017073508 for MTL Media Step

2023-03-01 Thread Matt Roper
for SAMedia") > Signed-off-by: Badal Nilawar Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 4 ++-- > drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 2 +- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/dr

Re: [PATCH] drm/i915: Move MCR_REG define to i915_reg_defs.h

2023-02-24 Thread Matt Roper
d-off-by: Lucas De Marchi Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_gt_regs.h | 2 -- > drivers/gpu/drm/i915/i915_reg_defs.h| 2 ++ > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_regs.h > b/dri

Re: [Intel-gfx] [PATCH] drm/i915/mtl: Apply Wa_14017073508 for MTL SoC Step

2023-02-24 Thread Matt Roper
+ b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c > > @@ -19,7 +19,7 @@ static bool __guc_rc_supported(struct intel_guc *guc) > > * Do not enable gucrc to avoid additional interrupts which > > * may disrupt pcode wa. > > */ > > - if (IS_MTL_GRAPHICS_STEP(gt->i915, P, STEP_A0, STEP_B0) && > > + if (IS_METEORLAKE(gt->i915) && INTEL_REVID(gt->i915) == 0 && > > gt->type == GT_MEDIA) > > return false; > > > > -- > > 2.25.1 > > -- Matt Roper Graphics Software Engineer Linux GPU Platform Enablement Intel Corporation

Re: [Intel-gfx] [PATCH] drm/i915/mtl: Add engine TLB invalidation

2023-02-24 Thread Matt Roper
On Thu, Feb 23, 2023 at 10:08:51AM +0100, Andrzej Hajda wrote: > On 17.02.2023 19:54, Matt Roper wrote: > > MTL's primary GT can continue to use the same engine TLB invalidation > > programming as past Xe_HP-based platforms. However the media GT needs > >

[PATCH v2] drm/i915/mtl: Add engine TLB invalidation

2023-02-23 Thread Matt Roper
Ursulin Cc: Daniele Ceraolo Spurio Cc: Andrzej Hajda Signed-off-by: Matt Roper Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/i915/gt/intel_engine_cs.c | 52 --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 1 + 2 files changed, 38 insertions(+), 15 deletions(-) diff --git

Re: [PATCH] drm/i915/sseu: fix max_subslices array-index-out-of-bounds access

2023-02-21 Thread Matt Roper
max_subslices in the eu_mask > > struct. > > > > Reported-by: Emil Renner Berthing > > Signed-off-by: Andrea Righi > > Looks like bug was probably introduced in: > > Fixes: bc3c5e0809ae ("drm/i915/sseu: Don't try to store EU mask internally in

[PATCH] drm/i915/mtl: Add engine TLB invalidation

2023-02-17 Thread Matt Roper
engine instance, it inexplicably uses bit 1 to request invalidations rather than bit 0. Cc: Tvrtko Ursulin Cc: Daniele Ceraolo Spurio Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_engine_cs.c | 52 --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 1 + 2 files

Re: [PATCH v5] drm/i915: Consolidate TLB invalidation flow

2023-02-16 Thread Matt Roper
(Andrzej) > > v5: > * Tidy checkpatch warnings. > > Signed-off-by: Tvrtko Ursulin > Cc: Andrzej Hajda > Cc: Matt Roper > Reviewed-by: Andrzej Hajda # v1 > Reviewed-by: Matt Roper # v3 Reviewed-by: Matt Roper for this version as well. Matt > Signed-of

Re: [PATCH] drm/i915/xelpmp: Consider GSI offset when doing MCR lookups

2023-02-15 Thread Matt Roper
On Wed, Feb 15, 2023 at 11:48:13AM -0800, Sripada, Radhakrishna wrote: > > > > -Original Message- > > From: dri-devel On Behalf Of Matt > > Roper > > Sent: Monday, February 13, 2023 4:19 PM > > To: intel-...@lists.freedesktop.org > > Cc: d

[PATCH] drm/i915/xelpmp: Consider GSI offset when doing MCR lookups

2023-02-13 Thread Matt Roper
: a7ec65fc7e83 ("drm/i915/xelpmp: Add multicast steering for media GT") Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c b/drivers/gpu/drm/i915/gt/intel_gt_m

Re: [PATCH v3] drm/i915: Consolidate TLB invalidation flow

2023-02-13 Thread Matt Roper
f, and by doing so minimise the amount > of invariant platform and engine checks during each and every TLB > invalidation. > > v2: > * Fail engine probe if TLB invlidations registers are unknown. > > v3: > * Rebase. > > Signed-off-by: Tvrtko Ursulin >

Re: [Intel-gfx] [PATCH v2 2/2] drm/i915: Remove unused/wrong INF_UNIT_LEVEL_CLKGATE

2023-02-06 Thread Matt Roper
On Mon, Feb 06, 2023 at 08:54:10AM -0800, Lucas De Marchi wrote: > INF_UNIT_LEVEL_CLKGATE is not replicated, but since it's not actually > used it can just be removed. > > Signed-off-by: Lucas De Marchi Reviewed-by: Matt Roper Looks like the only reference to the register

Re: [PATCH 1/2] drm/i915: Fix GEN8_MISCCPCTL

2023-02-03 Thread Matt Roper
On Fri, Feb 03, 2023 at 10:03:49AM -0800, Lucas De Marchi wrote: > On Thu, Feb 02, 2023 at 05:12:10PM -0800, Matt Roper wrote: > > On Thu, Feb 02, 2023 at 04:57:08PM -0800, Lucas De Marchi wrote: > > > Register 0x9424 is not replicated on any platform, so it shouldn't

Re: [PATCH 1/2] drm/i915: Fix GEN8_MISCCPCTL

2023-02-02 Thread Matt Roper
d either add a new "GEN9" definition, or just go back to using the GEN7 definition. Matt > > Also use intel_uncore_rmw() rather than a read + write where possible. > > Fixes: a9e69428b1b4 ("drm/i915: Define MCR registers explicitly") > Cc: Matt Roper >

[PATCH 4/4] drm/i915/selftest: Use forcewake to sanity check engine wa lists

2023-02-01 Thread Matt Roper
. As far as we know, there's never a case where a register that lives outside the RENDER powerwell will be reset by an RCS/CCS engine reset. Signed-off-by: Matt Roper --- .../gpu/drm/i915/gt/selftest_workarounds.c| 52 +++ 1 file changed, 52 insertions(+) diff --git a/drivers/gpu

[PATCH 2/4] drm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list

2023-02-01 Thread Matt Roper
. As such, we should implement this on the GT workaround list rather than an engine list. Bspec: 19219 Fixes: 3551ff928744 ("drm/i915/gen11: Moving WAs to rcs_engine_wa_init()") Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_workarounds.c | 14 +++--- 1 file

[PATCH 3/4] drm/i915/xehp: LNCF/LBCF workarounds should be on the GT list

2023-02-01 Thread Matt Roper
the reset of a register that lives outside the RENDER domain. Re-applying these registers on engine resets wouldn't actually hurt anything, but is unnecessary and just makes it more confusing to anyone trying to decipher how these registers really work. Signed-off-by: Matt Roper --- drivers/gpu/d

[PATCH 1/4] drm/i915/pvc: Annotate two more workaround/tuning registers as MCR

2023-02-01 Thread Matt Roper
915: Define MCR registers explicitly") Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 4 ++-- drivers/gpu/drm/i915/gt/intel_workarounds.c | 12 +--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_regs.h b/dri

Re: [Intel-gfx] [PATCH v4] drm/i915/uncore: Use GT message helpers in uncore

2023-01-26 Thread Matt Roper
On Thu, Jan 26, 2023 at 10:46:01AM +, Tvrtko Ursulin wrote: > > On 25/01/2023 19:04, Matt Roper wrote: > > On Wed, Jan 25, 2023 at 10:51:53AM +, Tvrtko Ursulin wrote: > > > > > > On 24/01/2023 20:54, john.c.harri...@intel.com wrote: > > > > Fr

Re: [PATCH v2 2/3] drm/i915/mtl: Correct implementation of Wa_18018781329

2023-01-25 Thread Matt Roper
On Wed, Jan 25, 2023 at 03:41:58PM -0800, Matt Roper wrote: > Workaround Wa_18018781329 has applied to several recent Xe_HP-based > platforms. However there are some extra gotchas to implementing this > properly for MTL that we need to take into account: > > * Due to the sepa

[PATCH v2 3/3] drm/i915/xehp: Annotate a couple more workaround registers as MCR

2023-01-25 Thread Matt Roper
annotation, workarounds will always be properly applied in a multicast manner on these platforms. Cc: Gustavo Sousa Fixes: 58bc2453ab8a ("drm/i915: Define multicast registers as a new type") Signed-off-by: Matt Roper Reviewed-by: Gustavo Sousa --- drivers/gpu/drm/i915/gt/intel_gt_regs.

[PATCH v2 2/3] drm/i915/mtl: Correct implementation of Wa_18018781329

2023-01-25 Thread Matt Roper
exist. Cc: Gustavo Sousa Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 7 +-- drivers/gpu/drm/i915/gt/intel_workarounds.c | 22 ++--- drivers/gpu/drm/i915/i915_drv.h | 4 3 files changed, 24 insertions(+), 9 deletions(-) diff

[PATCH v2 1/3] drm/i915/xehp: GAM registers don't need to be re-applied on engine resets

2023-01-25 Thread Matt Roper
ot;drm/i915/dg2: Move misplaced 'ctx' & 'gt' wa's to engine wa list") Fixes: b2006061ae28 ("drm/i915/xehpsdv: Move render/compute engine reset domains related workarounds") Fixes: 41bb543f5598 ("drm/i915/mtl: Add initial gt workarounds") Signed-off-by: Matt Roper ---

Re: [PATCH 1/2] drm/i915/xehp: GAM registers don't need to be re-applied on engine resets

2023-01-25 Thread Matt Roper
On Wed, Jan 25, 2023 at 04:43:29PM -0300, Gustavo Sousa wrote: > On Tue, Jan 24, 2023 at 05:14:06PM -0800, Matt Roper wrote: > > Register reset characteristics (i.e., whether the register maintains or > > loses its value on engine reset) is an important factor that determines >

Re: [Intel-gfx] [PATCH v4] drm/i915/uncore: Use GT message helpers in uncore

2023-01-25 Thread Matt Roper
int ret; > > - drm_dbg(>drm, "Triggering Driver-FLR\n"); > > + gt_dbg(uncore->gt, "Triggering Driver-FLR\n"); > > /* > > * Make sure any pending FLR requests have cleared by waiting for the > > @@ -2738,9 +2733,7 @@ static void driver_initiated_flr(struct intel_uncore > > *uncore) > > */ > > ret = intel_wait_for_register_fw(uncore, GU_CNTL, DRIVERFLR, 0, > > flr_timeout_ms); > > if (ret) { > > - drm_err(>drm, > > - "Failed to wait for Driver-FLR bit to clear! %d\n", > > - ret); > > + gt_err(uncore->gt, "Failed to wait for Driver-FLR bit to clear! > > %d\n", ret); > > return; > > } > > intel_uncore_write_fw(uncore, GU_DEBUG, DRIVERFLR_STATUS); > > @@ -2752,7 +2745,7 @@ static void driver_initiated_flr(struct intel_uncore > > *uncore) > > DRIVERFLR_STATUS, DRIVERFLR_STATUS, > > flr_timeout_ms); > > if (ret) { > > - drm_err(>drm, "wait for Driver-FLR completion failed! > > %d\n", ret); > > + gt_err(uncore->gt, "wait for Driver-FLR completion failed! > > %d\n", ret); > > return; > > } > > @@ -2911,7 +2904,7 @@ intel_uncore_arm_unclaimed_mmio_detection(struct > > intel_uncore *uncore) > > { > > bool ret = false; > > - if (drm_WARN_ON(>i915->drm, !uncore->debug)) > > + if (gt_WARN_ON(uncore->gt, !uncore->debug)) > > return false; > > spin_lock_irq(>debug->lock); > > @@ -2921,10 +2914,10 @@ intel_uncore_arm_unclaimed_mmio_detection(struct > > intel_uncore *uncore) > > if (unlikely(check_for_unclaimed_mmio(uncore))) { > > if (!uncore->i915->params.mmio_debug) { > > - drm_dbg(>i915->drm, > > - "Unclaimed register detected, " > > - "enabling oneshot unclaimed register reporting. > > " > > - "Please use i915.mmio_debug=N for more > > information.\n"); > > + gt_dbg(uncore->gt, > > + "Unclaimed register detected, " > > + "enabling oneshot unclaimed register reporting. " > > + "Please use i915.mmio_debug=N for more > > information.\n"); > > uncore->i915->params.mmio_debug++; > > } > > uncore->debug->unclaimed_mmio_check--; > > @@ -2957,7 +2950,7 @@ intel_uncore_forcewake_for_reg(struct intel_uncore > > *uncore, > > { > > enum forcewake_domains fw_domains = 0; > > - drm_WARN_ON(>i915->drm, !op); > > + gt_WARN_ON(uncore->gt, !op); > > if (!intel_uncore_has_forcewake(uncore)) > > return 0; > > @@ -2968,7 +2961,7 @@ intel_uncore_forcewake_for_reg(struct intel_uncore > > *uncore, > > if (op & FW_REG_WRITE) > > fw_domains |= uncore->funcs.write_fw_domains(uncore, reg); > > - drm_WARN_ON(>i915->drm, fw_domains & ~uncore->fw_domains); > > + gt_WARN_ON(uncore->gt, fw_domains & ~uncore->fw_domains); > > return fw_domains; > > } -- Matt Roper Graphics Software Engineer Linux GPU Platform Enablement Intel Corporation

[PATCH 2/2] drm/i915/xehp: Annotate a couple more workaround registers as MCR

2023-01-24 Thread Matt Roper
annotation, workarounds will always be properly applied in a multicast manner on these platforms. Cc: Gustavo Sousa Fixes: 58bc2453ab8a ("drm/i915: Define multicast registers as a new type") Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 4 ++-- drivers/gp

[PATCH 1/2] drm/i915/xehp: GAM registers don't need to be re-applied on engine resets

2023-01-24 Thread Matt Roper
engine reset domains related workarounds") Fixes: 41bb543f5598 ("drm/i915/mtl: Add initial gt workarounds") Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 1 + drivers/gpu/drm/i915/gt/intel_workarounds.c | 88 + drivers/gpu/drm/i915/i915_d

[PATCH] drm/i915: Move/adjust register definitions related to Wa_22011450934

2023-01-17 Thread Matt Roper
as CPU-initiated accesses; they use a different steering control register (0x20CC) which is initialized to a non-terminated DSS target by pre-OS firmware and never changed thereafter (i915 does not touch it and userspace does not have permission to change that register). Signed-off-by: Matt Roper

Re: [PATCH v4] drm/i915: Do not cover all future platforms in TLB invalidation

2023-01-10 Thread Matt Roper
2 to avoid catching all future platforms. >(Matt) > > v4: > * Be totally explicit on the Gen12 branch. (Andrzej) > > Signed-off-by: Tvrtko Ursulin > Cc: Matt Roper > Cc: Balasubramani Vivekanandan > Cc: Andrzej Hajda > Reviewed-by: Andrzej Hajda # v1 >

Re: [PATCH v3] drm/i915: Do not cover all future platforms in TLB invalidation

2023-01-09 Thread Matt Roper
2 to avoid catching all future platforms. >(Matt) > > Signed-off-by: Tvrtko Ursulin > Cc: Matt Roper > Cc: Balasubramani Vivekanandan > Cc: Andrzej Hajda > Reviewed-by: Andrzej Hajda # v1 Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_gt.c | 17

Re: [PATCH 1/4] drm/i915/gt: Remove platform comments from workarounds

2023-01-06 Thread Matt Roper
On Thu, Jan 05, 2023 at 01:35:52PM +, Tvrtko Ursulin wrote: > > Okay to sum it up below with some final notes.. > > On 04/01/2023 19:34, Matt Roper wrote: > > On Wed, Jan 04, 2023 at 09:58:13AM +, Tvrtko Ursulin wrote: > > > > > > On 23/

Re: [PATCH v2] drm/i915: Do not cover all future platforms in TLB invalidation

2023-01-06 Thread Matt Roper
On Fri, Jan 06, 2023 at 10:38:35AM +, Tvrtko Ursulin wrote: > From: Tvrtko Ursulin > > Revert to the original explicit approach and document the reasoning > behind it. > > v2: > * DG2 needs to be covered too. (Matt) > > Signed-off-by: Tvrtko Ursulin > Cc: M

Re: [Intel-gfx] [PATCH 2/2] drm/i915: Consolidate TLB invalidation flow

2023-01-05 Thread Matt Roper
On Thu, Jan 05, 2023 at 01:06:37PM +, Tvrtko Ursulin wrote: > > On 04/01/2023 17:41, Matt Roper wrote: > > On Wed, Jan 04, 2023 at 10:08:29AM +, Tvrtko Ursulin wrote: > > > > > > On 03/01/2023 19:57, Matt Roper wrote: > > > > On Mon, Dec 19, 202

Re: [PATCH 1/4] drm/i915/gt: Remove platform comments from workarounds

2023-01-04 Thread Matt Roper
lping. > > > > > Secondary but also important - if i915 is end of line then an extra > > > why we want to rip out this for ancient platforms. Is the > > > cost/benefit positive there? > > > > yep, here I agree and was my argument about using the platform names > > rather than a more "catch all" regex. I think doing this only for tgl+ > > platforms or even dg2+ would be ok. > > Okay this is something to have as a 2nd option indeed. DG2 is out of force > probe so maybe try with MTL. Although different rules for different > platforms I don't know if will work in practice. Could be justt too > complicated to be practical. > > > > As a side note, and going back to the question of what the tool can > > > output. Long time ago I had an idea where we could improve all this > > > by making it completely data-driven. Have the WA database inspecting > > > tool output a table which could be directly pasted into code and > > > interpreted by i915. > > > > > > For reference look at intel_workarounds_table.h in > > > https://patchwork.freedesktop.org/patch/399377/?series=83580=3 > > > and see what you thing. That was just a sketch of the idea, not > > > complete, and yes, i915 end of life point makes it moot. > > > > now that xe is announced I can talk about this part... this was more > > or less what I implemented in xe: it's a table with > > "register + condition + action". There are the most common condition > > checks builtin + a function hook for the more advanced ones. During > > binding the driver walks the table and coalesces the entries creating > > a per-register value that can be used at the proper times, depending if > > they are gt, engine, context workarounds. > > Cool, I support that high level approach. > > Regards, > > Tvrtko -- Matt Roper Graphics Software Engineer VTT-OSGC Platform Enablement Intel Corporation

Re: [Intel-gfx] [PATCH 2/2] drm/i915: Consolidate TLB invalidation flow

2023-01-04 Thread Matt Roper
On Wed, Jan 04, 2023 at 10:08:29AM +, Tvrtko Ursulin wrote: > > On 03/01/2023 19:57, Matt Roper wrote: > > On Mon, Dec 19, 2022 at 05:10:02PM +0100, Andrzej Hajda wrote: > > > On 19.12.2022 11:13, Tvrtko Ursulin wrote: > > > > From: Tvrtko Ursulin > >

Re: [PATCH 1/4] drm/i915/gt: Remove platform comments from workarounds

2023-01-03 Thread Matt Roper
; > giving sufficient attention that changes are made in tandem.) > > I can argue to the other side too. We don't have comments in the kernel > like > > /* Add 1 to i */ > i += 1; > > This is exactly what these comments are doing. And they are misleading Yeah, this

Re: [Intel-gfx] [PATCH 2/2] drm/i915: Consolidate TLB invalidation flow

2023-01-03 Thread Matt Roper
f TLB invlidations registers are unknown. > > > > Signed-off-by: Tvrtko Ursulin > > Cc: Andrzej Hajda > > Cc: Matt Roper > > Reviewed-by: Andrzej Hajda # v1 > > --- > > drivers/gpu/drm/i915/gt/intel_engine_cs.c| 93 + >

[PATCH] drm/i915/dg2: Return Wa_22012654132 to just specific steppings

2022-12-13 Thread Matt Roper
it in the specific steppings associated with the workaround. Bspec: 68331 Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_workarounds.c | 27 ++--- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers

Re: [PATCH] drm/i915/gen12: Apply recommended L3 hashing mask

2022-12-05 Thread Matt Roper
On Mon, Dec 05, 2022 at 04:33:29PM -0300, Gustavo Sousa wrote: > On Thu, Dec 01, 2022 at 02:22:10PM -0800, Matt Roper wrote: > > The TGL/RKL/DG1/ADL performance tuning guide suggests programming a > > literal value of 0x2FC0100F for this register. The register's hardware &g

Re: [Intel-gfx] [PATCH] drm/i915/mtl: Check full IP version when applying hw steering semaphore

2022-12-05 Thread Matt Roper
On Mon, Dec 05, 2022 at 12:50:40PM +, Tvrtko Ursulin wrote: > > On 02/12/2022 22:49, Rodrigo Vivi wrote: > > On Fri, Dec 02, 2022 at 02:35:28PM -0800, Matt Roper wrote: > > > When determining whether the platform has a hardware-level steering > > > semaphore (

Re: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl: Add hardware-level lock for steering

2022-12-05 Thread Matt Roper
On Mon, Dec 05, 2022 at 08:58:16AM +, Tvrtko Ursulin wrote: > > On 28/11/2022 23:30, Matt Roper wrote: > > Starting with MTL, the driver needs to not only protect the steering > > control register from simultaneous software accesses, but also protect > > against race

[PATCH] drm/i915/mtl: Check full IP version when applying hw steering semaphore

2022-12-02 Thread Matt Roper
/i915/mtl: Add hardware-level lock for steering") Cc: Balasubramani Vivekanandan Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c b/drivers/gpu/drm/i915/gt/inte

[PATCH] drm/i915/gen12: Apply recommended L3 hashing mask

2022-12-01 Thread Matt Roper
existing bits/fields in the preferred notation. Bspec: 31870 Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 9 + drivers/gpu/drm/i915/gt/intel_workarounds.c | 4 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/gt

Re: [PATCH v3 5/5] drm/i915/mtl: Hold forcewake and MCR lock over PPAT setup

2022-12-01 Thread Matt Roper
On Thu, Dec 01, 2022 at 02:56:30PM +0530, Balasubramani Vivekanandan wrote: > On 30.11.2022 07:58, Matt Roper wrote: > > PPAT setup involves a series of multicast writes. This can be optimized > > slightly be acquiring forcewake and the steering lock just once for the >

Re: [Intel-gfx] [PATCH v6 1/1] drm/i915/pxp: Promote pxp subsystem to top-level of i915

2022-11-30 Thread Matt Roper
ndex c28be430718a..fd30befbf784 100644 > --- a/drivers/gpu/drm/i915/pxp/intel_pxp_irq.c > +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_irq.c > @@ -3,14 +3,18 @@ > * Copyright(c) 2020 Intel Corporation. > */ > #include > -#include "intel_pxp.h" > -#include "intel_pxp_irq.h" > -#include "intel_pxp_session.h" > + > #include "gt/intel_gt_irq.h" > #include "gt/intel_gt_regs.h" > #include "gt/intel_gt_types.h" > + > #include "i915_irq.h" > #include "i915_reg.h" > + > +#include "intel_pxp.h" > +#include "intel_pxp_irq.h" > +#include "intel_pxp_session.h" > +#include "intel_pxp_types.h" > #include "intel_runtime_pm.h" > > /** > diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_pm.c > b/drivers/gpu/drm/i915/pxp/intel_pxp_pm.c > index 6a7d4e2ee138..37371f44a550 100644 > --- a/drivers/gpu/drm/i915/pxp/intel_pxp_pm.c > +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_pm.c > @@ -3,11 +3,13 @@ > * Copyright(c) 2020 Intel Corporation. > */ > > +#include "i915_drv.h" > + > #include "intel_pxp.h" > #include "intel_pxp_irq.h" > #include "intel_pxp_pm.h" > #include "intel_pxp_session.h" > -#include "i915_drv.h" > +#include "intel_pxp_types.h" > > void intel_pxp_suspend_prepare(struct intel_pxp *pxp) > { > diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c > b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c > index b0c9170b1395..16782d119bfd 100644 > --- a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c > +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c > @@ -11,17 +11,19 @@ > #include "gem/i915_gem_lmem.h" > > #include "i915_drv.h" > + > #include "intel_pxp.h" > -#include "intel_pxp_session.h" > -#include "intel_pxp_tee.h" > #include "intel_pxp_cmd_interface_42.h" > #include "intel_pxp_huc.h" > +#include "intel_pxp_session.h" > +#include "intel_pxp_tee.h" > +#include "intel_pxp_types.h" > > static inline struct intel_pxp *i915_dev_to_pxp(struct device *i915_kdev) > { > struct drm_i915_private *i915 = kdev_to_i915(i915_kdev); > > - return _gt(i915)->pxp; > + return i915->pxp; > } > > static int intel_pxp_tee_io_message(struct intel_pxp *pxp, > diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_types.h > b/drivers/gpu/drm/i915/pxp/intel_pxp_types.h > index f74b1e11a505..d550cdba3399 100644 > --- a/drivers/gpu/drm/i915/pxp/intel_pxp_types.h > +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_types.h > @@ -12,12 +12,23 @@ > #include > > struct intel_context; > +struct intel_gt; > struct i915_pxp_component; > +struct drm_i915_private; > > /** > * struct intel_pxp - pxp state > */ > struct intel_pxp { > + /** @i915: back poiner to i915*/ > + struct drm_i915_private *i915; > + > + /** > + * @ctrl_gt: poiner to the tile that owns the controls for PXP > subsystem assets that > + * the VDBOX, the KCR engine (and GSC CS depending on the platform) > + */ > + struct intel_gt *ctrl_gt; > + > /** >* @pxp_component: i915_pxp_component struct of the bound mei_pxp >* module. Only set and cleared inside component bind/unbind functions, > > base-commit: d21d6474a37e5d43075a24668807ea40a7ee9fc1 > -- > 2.34.1 > -- Matt Roper Graphics Software Engineer VTT-OSGC Platform Enablement Intel Corporation

Re: [Intel-gfx] [linux-gfx] [PATCH] drm/i915/pvc: Implement recommended caching policy

2022-11-30 Thread Matt Roper
On Wed, Nov 30, 2022 at 09:07:23AM -0800, Wayne Boyer wrote: > As per the performance tuning guide, set the HOSTCACHEEN bit to > implement the recommended caching policy on PVC. > > Signed-off-by: Wayne Boyer Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel

Re: [PATCH v2 5/5] drm/i915/mtl: Hold forcewake and MCR lock over PPAT setup

2022-11-30 Thread Matt Roper
On Wed, Nov 30, 2022 at 09:21:07PM +0530, Balasubramani Vivekanandan wrote: > On 28.11.2022 15:30, Matt Roper wrote: > > PPAT setup involves a series of multicast writes. This can be optimized > > slightly be acquiring forcewake and the steering lock just once for the >

[PATCH v3 5/5] drm/i915/mtl: Hold forcewake and MCR lock over PPAT setup

2022-11-30 Thread Matt Roper
PPAT setup involves a series of multicast writes. This can be optimized slightly be acquiring forcewake and the steering lock just once for the entire sequence. v2: - We should use FW_REG_WRITE instead of FW_REG_READ. (Bala) Suggested-by: Balasubramani Vivekanandan Signed-off-by: Matt Roper

[PATCH v2 4/5] drm/i915/mtl: Add hardware-level lock for steering

2022-11-28 Thread Matt Roper
fix to new steering semaphore register. (Mika) Cc: Mika Kuoppala Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 38 ++--- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 1 + 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/d

[PATCH v2 3/5] drm/i915/gt: Add dedicated MCR lock

2022-11-28 Thread Matt Roper
accesses in interrupt context because reset -> errordump happens in a tasklet. Cc: Chris Wilson Cc: Mika Kuoppala Cc: Balasubramani Vivekanandan Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt.c | 7 +- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 79 ++

[PATCH v2 5/5] drm/i915/mtl: Hold forcewake and MCR lock over PPAT setup

2022-11-28 Thread Matt Roper
PPAT setup involves a series of multicast writes. This can be optimized slightly be acquiring forcewake and the steering lock just once for the entire sequence. Suggested-by: Balasubramani Vivekanandan Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gtt.c | 27

[PATCH v2 1/5] drm/i915/gt: Correct kerneldoc for intel_gt_mcr_wait_for_reg()

2022-11-28 Thread Matt Roper
The kerneldoc function name was not updated when this function was converted to a non-fw form. Fixes: 192bb40f030a ("drm/i915/gt: Manage uncore->lock while waiting on MCR register") Reported-by: kernel test robot Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mc

[PATCH v2 0/5] i915: dedicated MCR locking and hardware semaphore

2022-11-28 Thread Matt Roper
for hardware semaphore and CI taint if we ever encounter it (this implies a hardware/firmware problem). (Mika) - Add an extra patch optimizing xehp_setup_private_ppat by holding forcewake & mcr lock over the sequence of register writes. (Bala) Cc: Mika Kuoppala Cc: Balasubramani Vivekanan

[PATCH v2 2/5] drm/i915/gt: Pass gt rather than uncore to lowest-level reads/writes

2022-11-28 Thread Matt Roper
Passing the GT rather than uncore to the lowest level MCR read and write functions will make it easier to introduce dedicated MCR locking in a following patch. Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 18 ++ 1 file changed, 10 insertions(+), 8

Re: [Intel-gfx] [PATCH] drm/i915/gt: Manage uncore->lock while waiting on MCR register

2022-11-23 Thread Matt Roper
On Wed, Nov 23, 2022 at 02:46:18PM -0800, John Harrison wrote: > On 11/17/2022 09:33, Matt Roper wrote: > > ... > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c > > b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c > > index 830edffe88cc..d9a8ff9e5e57 100644

Re: [PATCH v4] drm/i915/mtl: Media GT and Render GT share common GGTT

2022-11-22 Thread Matt Roper
of intel_gt_tiles_init > > v3: > 1. Move out for_each_gt from i915_driver.c (Jani Nikula) > > v4: drop using RCU primitives on ggtt->gt_list as it is not an RCU list > (Matt Roper) > > Cc: Matt Roper > Signed-off-by: Aravind Iddamsetty Reviewed-by: Matt Roper >

[PATCH 2/4] drm/i915/gt: Pass gt rather than uncore to lowest-level reads/writes

2022-11-22 Thread Matt Roper
Passing the GT rather than uncore to the lowest level MCR read and write functions will make it easier to introduce dedicated MCR locking in a folling patch. Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 18 ++ 1 file changed, 10 insertions(+), 8

[PATCH 3/4] drm/i915/gt: Add dedicated MCR lock

2022-11-22 Thread Matt Roper
n be used to serialize not only software accesses, but also hardware/firmware accesses as well; support for that hardware level lock will be added in a future patch. Cc: Chris Wilson Cc: Mika Kuoppala Cc: Balasubramani Vivekanandan Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/i

[PATCH 1/4] drm/i915/gt: Correct kerneldoc for intel_gt_mcr_wait_for_reg()

2022-11-22 Thread Matt Roper
The kerneldoc function name was not updated when this function was converted to a non-fw form. Fixes: 192bb40f030a ("drm/i915/gt: Manage uncore->lock while waiting on MCR register") Reported-by: kernel test robot Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mc

[PATCH 4/4] drm/i915/mtl: Add hardware-level lock for steering

2022-11-22 Thread Matt Roper
; assuming the hardware lock is behaving properly, there should never be any contention on the software lock in this case. Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 29 + drivers/gpu/drm/i915/gt/intel_gt_regs.h | 1 + 2 files changed, 26

[PATCH 0/4] i915: dedicated MCR locking and hardware semaphore

2022-11-22 Thread Matt Roper
-provided STEER_SEMAPHORE that allows us to synchronize with external hardware and firmware agents. Matt Roper (4): drm/i915/gt: Correct kerneldoc for intel_gt_mcr_wait_for_reg() drm/i915/gt: Pass gt rather than uncore to lowest-level reads/writes drm/i915/gt: Add dedicated MCR lock drm/i915/mtl: Add

Re: [PATCH v3] drm/i915/mtl: Media GT and Render GT share common GGTT

2022-11-18 Thread Matt Roper
of intel_gt_tiles_init > > v3: > 1. Move out for_each_gt from i915_driver.c (Jani Nikula) > > Cc: Matt Roper > Signed-off-by: Aravind Iddamsetty > --- > drivers/gpu/drm/i915/gt/intel_ggtt.c | 54 +-- > drivers/gpu/drm/i915/gt/intel_gt.c

Re: [Intel-gfx] [PATCH] drm/i915/gt: Manage uncore->lock while waiting on MCR register

2022-11-18 Thread Matt Roper
On Fri, Nov 18, 2022 at 01:20:45PM -0800, Lucas De Marchi wrote: > On Thu, Nov 17, 2022 at 09:33:58AM -0800, Matt Roper wrote: > > The GT MCR code currently relies on uncore->lock to avoid race > > conditions on the steering control register during MCR operations. The > >

Re: [Intel-gfx] [PATCH] drm/i915: Fix workarounds on Gen2-3

2022-11-18 Thread Matt Roper
I can see, letting this function run its course doesn't wind up having any effect or cause any problems (you still wind up with an empty list). Regardless, Reviewed-by: Matt Roper > > engine_fake_wa_init(engine, wal); > @@ -3016,9 +3016,6 @@ void intel_engine_init_workarounds(

[PATCH] drm/i915/gt: Manage uncore->lock while waiting on MCR register

2022-11-17 Thread Matt Roper
uot;drm/i915/gt: Add intel_gt_mcr_wait_for_reg_fw()") Cc: Lucas De Marchi Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt.c | 6 +++--- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 18 ++ drivers/gpu/drm/i915/gt/intel_gt_mcr.h | 12 ++-- 3 files changed, 19 in

Re: [PATCH] drm/i915: Update workaround documentation

2022-11-15 Thread Matt Roper
e that was wrongly referenced, adding back the > reference in the correct paragraph. > - Remove "Display workarounds" and just mention "display IP" under > "Other" category since all of them are peppered around the driver. > > Cc: Matt Roper > Sign

Re: [PATCH] drm/i915: Update workaround documentation

2022-11-14 Thread Matt Roper
t; description below for now? Matt > + * > + * - Other: There are WAs that, due to their nature, cannot be applied from > a central > + * place. Those are peppered around the rest of the code, as needed. > + * > + * .. [1] Technically, some registers are powercontext saved & restored, so > they > + *survive a suspend/resume. In practice, writing them again is not too > + *costly and simplifies things, so it's the approach taken in the driver. > + */ > > static void wa_init_start(struct i915_wa_list *wal, const char *name, const > char *engine_name) > { > -- > 2.38.1 > -- Matt Roper Graphics Software Engineer VTT-OSGC Platform Enablement Intel Corporation

[PATCH] drm/i915/dg2: Drop force_probe requirement

2022-11-08 Thread Matt Roper
Cc: Joonas Lahtinen Cc: Jani Nikula Signed-off-by: Matt Roper --- There was some recent offline discussion questioning whether we'd fully identified the root cause of some historic CI failures, or whether it was possible we might still have a bug lurking somewhere causing sporadic failures

Re: [PATCH] drm/i915/mtl: Media GT and Render GT share common GGTT

2022-11-07 Thread Matt Roper
On Mon, Nov 07, 2022 at 07:43:59PM +0530, Iddamsetty, Aravind wrote: > > > On 31-10-2022 23:16, Matt Roper wrote: > > On Mon, Oct 31, 2022 at 06:01:11PM +0530, Aravind Iddamsetty wrote: > >> On XE_LPM+ platforms the media engines are carved out into a separate > >&

Re: [PATCH v2 3/5] drm/i915/mtl: add GSC CS interrupt support

2022-11-07 Thread Matt Roper
t; v2: clean up the if statement for the engine irq (Tvrtko) > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper > Cc: Tvrtko Ursulin > Reviewed-by: Matt Roper #v1 Reviewed-by: Matt Roper for v2 as well. > --- > drivers/gpu/drm/i915/gt/intel_gt_irq.c | 75

Re: [PATCH v2 5/5] drm/i915/mtl: don't expose GSC command streamer to the user

2022-11-04 Thread Matt Roper
the debug logs (Matt) > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_engine_user.c | 27 - > 1 file changed, 21 insertions(+), 6 deletions(-) > > diff --git a/drivers/g

Re: [Intel-gfx] [PATCH] drm/i915/dg2: Introduce Wa_18017747507

2022-11-01 Thread Matt Roper
BLE REG_BIT(4) We need one more space here between 'define' and the register name for consistency with the rest of the file. But I can fix that up while applying. Reviewed-by: Matt Roper Applied to drm-intel-gt-next. Thanks for the patch. Matt > + > #define GEN8_R

Re: [PATCH] drm/i915/mtl: Add MC6 Wa_14017210380 for SAMedia

2022-11-01 Thread Matt Roper
_FREQUENCY_CONFIG param2 */ > #define PCODE_MBOX_DOMAIN_NONE 0x0 > #define PCODE_MBOX_DOMAIN_MEDIAFF0x3 > + > +/* Wa_14017210380: mtl */ > +#define PCODE_MBOX_GT_STATE0x50 > +/* sub-commands (param1) */ > +#define PCODE_MBOX_GT_STATE_MEDIA_BUSY 0x1 > +#define PCODE_MBOX_GT_STATE_MEDIA_NOT_BUSY 0x2 > +/* param2 */ > +#define PCODE_MBOX_GT_STATE_DOMAIN_MEDIA 0x1 > + > #define GEN6_PCODE_DATA _MMIO(0x138128) > #define GEN6_PCODE_FREQ_IA_RATIO_SHIFT 8 > #define GEN6_PCODE_FREQ_RING_RATIO_SHIFT 16 > -- > 2.25.1 > -- Matt Roper Graphics Software Engineer VTT-OSGC Platform Enablement Intel Corporation

Re: [PATCH 1/5] drm/i915/mtl: add initial definitions for GSC CS

2022-10-31 Thread Matt Roper
On Mon, Oct 31, 2022 at 09:43:33AM -0700, Ceraolo Spurio, Daniele wrote: > > > On 10/31/2022 9:26 AM, Matt Roper wrote: > > On Thu, Oct 27, 2022 at 03:15:50PM -0700, Daniele Ceraolo Spurio wrote: > > > Starting on MTL, the GSC is no longer managed with direct MMIO acce

Re: [PATCH] drm/i915/mtl: Media GT and Render GT share common GGTT

2022-10-31 Thread Matt Roper
PAT setup should be noted and explained as well since it differs from how you approached the other changes here. > > BSPEC: 63834 > > Cc: Matt Roper > Signed-off-by: Aravind Iddamsetty > --- > drivers/gpu/drm/i915/gt/intel_ggtt.c | 49 +++--- > d

Re: [PATCH 1/5] drm/i915/mtl: add initial definitions for GSC CS

2022-10-31 Thread Matt Roper
s. > Note that, although it is now a CS, the GSC retains its old > class:instance value (OTHER_CLASS instance 6) > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Now that we have an OTHER_CLASS engine, I think we also need to deal with the class -> reg mapping table in mmio_

Re: [Intel-gfx] [PATCH] drm/i915/mtl: Add missing steering table terminators

2022-10-28 Thread Matt Roper
On Fri, Oct 28, 2022 at 04:04:18PM -0700, Lucas De Marchi wrote: > On Fri, Oct 28, 2022 at 03:40:22PM -0700, Matt Roper wrote: > > The termination entries were missing for a couple of the recently-added > > MTL steering tables. > > > > Fixes: f32898c94a10 ("drm/i9

[PATCH] drm/i915/mtl: Add missing steering table terminators

2022-10-28 Thread Matt Roper
The termination entries were missing for a couple of the recently-added MTL steering tables. Fixes: f32898c94a10 ("drm/i915/xelpg: Add multicast steering") Fixes: a7ec65fc7e83 ("drm/i915/xelpmp: Add multicast steering for media GT") Signed-off-by: Matt Roper --- dri

Re: [PATCH 5/5] drm/i915/mtl: don't expose GSC command streamer to the user

2022-10-28 Thread Matt Roper
On Fri, Oct 28, 2022 at 10:14:05AM -0700, Ceraolo Spurio, Daniele wrote: > > > On 10/27/2022 8:40 PM, Matt Roper wrote: > > On Thu, Oct 27, 2022 at 03:15:54PM -0700, Daniele Ceraolo Spurio wrote: > > > There is no userspace user for this CS yet, we only need it for intern

Re: [PATCH 5/5] drm/i915/mtl: don't expose GSC command streamer to the user

2022-10-27 Thread Matt Roper
On Thu, Oct 27, 2022 at 03:15:54PM -0700, Daniele Ceraolo Spurio wrote: > There is no userspace user for this CS yet, we only need it for internal > kernel ops (e.g. HuC, PXP), so don't expose it. > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Since we never expose

Re: [PATCH 4/5] drm/i915/mtl: add GSC CS reset support

2022-10-27 Thread Matt Roper
On Thu, Oct 27, 2022 at 03:15:53PM -0700, Daniele Ceraolo Spurio wrote: > The GSC CS has its own dedicated bit in the GDRST register. > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Bspec: 52549 Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/int

Re: [PATCH 3/5] drm/i915/mtl: add GSC CS interrupt support

2022-10-27 Thread Matt Roper
> Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Reviewed-by: Matt Roper > --- > drivers/gpu/drm/i915/gt/intel_gt_irq.c | 78 ++ > 1 file changed, 43 insertions(+), 35 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_i

Re: [PATCH 2/5] drm/i915/mtl: pass the GSC CS info to the GuC

2022-10-27 Thread Matt Roper
apping tables, even before this patch, so I'd just leave this sentence off to avoid confusion. Otherwise, Reviewed-by: Matt Roper > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper > --- > drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 11 +-- > dr

Re: [PATCH 1/5] drm/i915/mtl: add initial definitions for GSC CS

2022-10-27 Thread Matt Roper
s. > Note that, although it is now a CS, the GSC retains its old > class:instance value (OTHER_CLASS instance 6) > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper Maybe add "Bspec: 65308, 45605" as a reference? Otherwise, Reviewed-by: Matt Roper > --- > d

[PATCH] drm/i915/xelpg: Fix write to MTL_MCR_SELECTOR

2022-10-19 Thread Matt Roper
A misplaced closing parenthesis caused the groupid/instanceid values to be considered part of the ternary operator's condition instead of being OR'd into the resulting value. Fixes: f32898c94a10 ("drm/i915/xelpg: Add multicast steering") Reported-by: kernel test robot Signed-off-by:

Re: [PATCH v2 5/7] drm/i915/mtl: Handle wopcm per-GT and limit calculations.

2022-10-18 Thread Matt Roper
he older TGL-ADL gfx IP name. MTL's media IP is called Xe_LPM+ (which we should label as XELPMP in code, so it looks like the final "P" is missing here). Matt -- Matt Roper Graphics Software Engineer VTT-OSGC Platform Enablement Intel Corporation

Re: [PATCH v2 7/7] drm/i915/guc: handle interrupts from media GuC

2022-10-14 Thread Matt Roper
, we keep the > interrupts always enabled in HW and use a variable in the GuC structure > to determine if we want to service the received interrupts or not. > > v2: use MTL_ prefix for reg definition (Matt) > > Signed-off-by: Daniele Ceraolo Spurio > Cc: Matt Roper > Cc: John Harri

[PATCH] drm/i915/pvc: Update forcewake domain for CCS register ranges

2022-10-14 Thread Matt Roper
The bspec was just updated with a correction to the forcewake domain required when accessing registers in the CCS engine ranges (0x1a000 - 0x1 and 0x26000 - 0x27fff) on PVC; these ranges require a wake on the RENDER domain, not the GT domain. Bspec: 67609 Signed-off-by: Matt Roper

[PATCH v3 13/14] drm/i915/xelpg: Add multicast steering

2022-10-14 Thread Matt Roper
t writes just to be safe. (Bala) Bspec: 67788, 67112 Cc: Radhakrishna Sripada Cc: Balasubramani Vivekanandan Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 135 +--- drivers/gpu/drm/i915/gt/intel_gt_regs.h | 5 + drivers/gpu/drm/i915/gt/inte

[PATCH v3 14/14] drm/i915/xelpmp: Add multicast steering for media GT

2022-10-14 Thread Matt Roper
MTL's media IP (Xe_LPM+) only has a single type of steering ("OAADDRM") which selects between media slice 0 and media slice 1. We'll always steer to media slice 0 unless it is fused off (which is the case when VD0, VE0, and SFC0 are all reported as unavailable). Bspec: 67789 Signed-of

[PATCH v3 12/14] drm/i915: Define multicast registers as a new type

2022-10-14 Thread Matt Roper
need only make changes to structures that have an explicit i915_reg_t in them now. Cc: Jani Nikula Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt.c| 16 -- drivers/gpu/drm/i915/gt/intel_gt_mcr.c| 51 --- drivers/gpu/drm/i915/gt/inte

[PATCH v3 11/14] drm/i915/gt: Add MCR-specific workaround initializers

2022-10-14 Thread Matt Roper
Let's be more explicit about which of our workarounds are updating MCR registers. Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_workarounds.c | 433 +++--- .../gpu/drm/i915/gt/intel_workarounds_types.h | 4 +- 2 files changed, 263 insertions(+), 174 deletions

[PATCH v3 06/14] drm/i915/xehp: Check for faults on primary GAM

2022-10-14 Thread Matt Roper
ally steer to the primary GAM) is sufficient; we don't need to loop over each instance of the MCR register. v2: - Update more instances of fault registers. (Bala) Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt.c| 52 +++ drivers/gpu/drm/i915/i915_gpu_er

[PATCH v3 07/14] drm/i915/gt: Add intel_gt_mcr_wait_for_reg_fw()

2022-10-14 Thread Matt Roper
that handles this on MCR registers, similar to the __intel_wait_for_register_fw() function we already have for regular registers. Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/gt/intel_gt_mcr.c | 55 ++ drivers/gpu/drm/i915/gt/intel_gt_mcr.h | 7 2 files changed, 62

[PATCH v3 03/14] drm/i915/gt: Drop a few unused register definitions

2022-10-14 Thread Matt Roper
Let's drop a few register definitions that are unused anywhere in the driver today. Since the referenced offsets are part of what is now considered a multicast register region, the current definitions would not be correct for use on any future platform. Signed-off-by: Matt Roper --- drivers

<    1   2   3   4   5   6   7   8   9   10   >