mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-08 14:02:37 -04:00
drm/i915/pxp: Add missing tag for Wa_14019159160
Add missing tag for "Wa_14019159160 - Case 2" (for existing
PXP code that ensures run alone mode bit is set to allow
PxP-decryption.
v5: - remove the max IP_VER check since new platforms that
i915 supports needs this fix and tag the caller too
(John Harrison).
v4: - Include IP_VER 12.71. (Matt Roper)
v3: - Check targeted platforms using IP_VAL. (John Harrison)
v2: - Fix WA id number (John Harrison).
- Improve comments and code to be specific
for the targeted platforms (John Harrison)
Signed-off-by: Alan Previn <alan.previn.teres.alexis@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241016001658.2671225-1-alan.previn.teres.alexis@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
This commit is contained in:
committed by
Rodrigo Vivi
parent
5957982974
commit
682c9d3d7a
@@ -820,8 +820,10 @@ static bool ctx_needs_runalone(const struct intel_context *ce)
|
||||
bool ctx_is_protected = false;
|
||||
|
||||
/*
|
||||
* On MTL and newer platforms, protected contexts require setting
|
||||
* the LRC run-alone bit or else the encryption will not happen.
|
||||
* Wa_14019159160 - Case 2.
|
||||
* On some platforms, protected contexts require setting
|
||||
* the LRC run-alone bit or else the encryption/decryption will not happen.
|
||||
* NOTE: Case 2 only applies to PXP use-case of said workaround.
|
||||
*/
|
||||
if (GRAPHICS_VER_FULL(ce->engine->i915) >= IP_VER(12, 70) &&
|
||||
(ce->engine->class == COMPUTE_CLASS || ce->engine->class == RENDER_CLASS)) {
|
||||
@@ -850,6 +852,7 @@ static void init_common_regs(u32 * const regs,
|
||||
if (GRAPHICS_VER(engine->i915) < 11)
|
||||
ctl |= _MASKED_BIT_DISABLE(CTX_CTRL_ENGINE_CTX_SAVE_INHIBIT |
|
||||
CTX_CTRL_RS_CTX_ENABLE);
|
||||
/* Wa_14019159160 - Case 2.*/
|
||||
if (ctx_needs_runalone(ce))
|
||||
ctl |= _MASKED_BIT_ENABLE(GEN12_CTX_CTRL_RUNALONE_MODE);
|
||||
regs[CTX_CONTEXT_CONTROL] = ctl;
|
||||
|
||||
Reference in New Issue
Block a user