]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/dg2: Add forcewake table
authorMatt Roper <matthew.d.roper@intel.com>
Thu, 29 Jul 2021 16:59:53 +0000 (09:59 -0700)
committerMatt Roper <matthew.d.roper@intel.com>
Wed, 4 Aug 2021 04:05:28 +0000 (21:05 -0700)
commit232da426377126e4ded49649f5e5973b2b720901
tree3b5d72723a61dd3df6f0b0dd903f9fdf485c2a63
parentd745503f148a4c492acd73fdfe6b7d60c3427beb
drm/i915/dg2: Add forcewake table

The DG2 forcewake table is very similar to the one used by XeHP SDV (and
both platforms are even presented as a single table in the bspec).  For
the most part DG2 starts using a few additional ranges that were
'reserved' on XeHP SDV and stops using some others.  However there is a
single range (0xd800-0xd87f) that needs to be handled differently
between the two platforms (it needs GT wake on XeHP SDV, but render wake
on DG2) so unless we want to wake both domains (which could waste power)
or define new types of forcewake domains for this special case we need
to have separate tables for the two platforms.  Let's define the ranges
for both platforms with a parameterized macro so that we don't actually
need to duplicate everything in the code.

It should be fine for DG2 to re-use the Xe_HP shadow register list so we
can continue to use the 'xehpsdv' MMIO write functions and don't need to
spin up a separate DG2 instance.

Bspec: 66534
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210729170008.2836648-4-matthew.d.roper@intel.com
drivers/gpu/drm/i915/intel_uncore.c