All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: Mika Kuoppala <mika.kuoppala@intel.com>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: [PATCH] drm/i915/cnl: WaSendPushConstantsFromMMIO / WaDisableGatherAtSetShaderCommonSlice
Date: Thu,  5 Oct 2017 15:26:40 -0700	[thread overview]
Message-ID: <20171005222640.20454-1-rodrigo.vivi@intel.com> (raw)
In-Reply-To: <150723593594.12843.12325250936714797236@mail.alporthouse.com>

WaSendPushConstantsFromMMIO: "If not using RS, we must send two
MMIO registers at context create to trigger push constants at
3D primitive"

There is almost no documentation on Spec or wa_database about
this WaSendPushConstantsFromMMIO. So we also found out in another
place that WaSendPushConstantsFromMMIO was only adding
COMMON_SLICE_CHICKEN2 in a white list.

So we looked to the programming notes of COMMON_SLICE_CHICKEN2
and we notice that this bit 12 is marked in association with
2 other MMIO registers for SKL+. Apparently for SKL+ we should
check few MMIOs to decide for set or reset of this bit 12.

Also "gather" is related to gather and packing of constants elements
into "push constants".

Mesa has no plans of using RS so there is no need to whitelist
and we only need to initialize the context image with that bit clear.

v2: Move to cnl_init_workarounds as Chris suggested.
    Add both Wa names and improve commit message as Rafael suggested.

Cc: Rafael Antognolli <rafael.antognolli@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
 drivers/gpu/drm/i915/intel_engine_cs.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index 807a7aafc089..3beb7d327785 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1296,6 +1296,11 @@ static int cnl_init_workarounds(struct intel_engine_cs *engine)
 		WA_SET_BIT_MASKED(COMMON_SLICE_CHICKEN2,
 				  GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE);
 
+	/* WaDisableGatherAtSetShaderCommonSlice:cnl */
+	/* WaSendPushConstantsFromMMIO:cnl */
+	WA_CLR_BIT_MASKED(COMMON_SLICE_CHICKEN2,
+			  GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE);
+
 	/* WaInPlaceDecompressionHang:cnl */
 	I915_WRITE(GEN9_GAMT_ECO_REG_RW_IA,
 		   (I915_READ(GEN9_GAMT_ECO_REG_RW_IA) |
-- 
2.13.5

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2017-10-05 22:26 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-05 20:22 [PATCH] drm/i915/cnl: WaDisableGatherAtSetShaderCommonSlice Rodrigo Vivi
2017-10-05 20:38 ` Chris Wilson
2017-10-05 22:26   ` Rodrigo Vivi [this message]
2017-10-05 22:45     ` [PATCH] drm/i915/cnl: WaSendPushConstantsFromMMIO / WaDisableGatherAtSetShaderCommonSlice Rafael Antognolli
2017-10-06 11:06 ` ✗ Fi.CI.BAT: warning for drm/i915/cnl: WaDisableGatherAtSetShaderCommonSlice (rev2) Patchwork
2017-10-06 13:10   ` Rodrigo Vivi
2017-10-06 13:18     ` Chris Wilson
2017-10-06 14:45     ` Saarinen, Jani
2017-10-09  6:34     ` Lofstedt, Marta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171005222640.20454-1-rodrigo.vivi@intel.com \
    --to=rodrigo.vivi@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=mika.kuoppala@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.