[Intel-gfx] [PATCH 5/6] drm/i915/gen12: Update shadowed register table

Yokoyama, Caz caz.yokoyama at intel.com
Tue Aug 10 22:04:28 UTC 2021


Reviewed-by: Caz Yokoyama <caz.yokoyama at intel.com>
-caz

On Wed, 2021-07-28 at 22:41 -0700, Matt Roper wrote:
> The bspec lists many shadowed registers (i.e., registers for which we
> don't need to grab forcewake when writing) that we weren't tracking
> in
> the driver.  Although we may not actually use all of these registers
> right now, it's best to just match the bspec list exactly.
> 
> Note that the bspec also lists registers that are shadowed for
> various
> HW-internal accesses; we can ignore those and just list the ones that
> are shadowed for accesses from the IA/CPU.
> 
> Bspec: 52077
> Signed-off-by: Matt Roper <matthew.d.roper at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_uncore.c | 23 ++++++++++++++---------
>  1 file changed, 14 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_uncore.c
> b/drivers/gpu/drm/i915/intel_uncore.c
> index 31e0456dce5a..42acf106a6df 100644
> --- a/drivers/gpu/drm/i915/intel_uncore.c
> +++ b/drivers/gpu/drm/i915/intel_uncore.c
> @@ -984,23 +984,28 @@ static const struct i915_range
> gen11_shadowed_regs[] = {
>  
>  static const struct i915_range gen12_shadowed_regs[] = {
>  	{ .start =   0x2030, .end =   0x2030 },
> -	{ .start =   0x2550, .end =   0x2550 },
> +	{ .start =   0x2510, .end =   0x2550 },
>  	{ .start =   0xA008, .end =   0xA00C },
> +	{ .start =   0xA188, .end =   0xA188 },
> +	{ .start =   0xA278, .end =   0xA278 },
> +	{ .start =   0xA540, .end =   0xA56C },
> +	{ .start =   0xC4C8, .end =   0xC4C8 },
> +	{ .start =   0xC4D4, .end =   0xC4D4 },
> +	{ .start =   0xC600, .end =   0xC600 },
>  	{ .start =  0x22030, .end =  0x22030 },
> -	{ .start =  0x22550, .end =  0x22550 },
> +	{ .start =  0x22510, .end =  0x22550 },
>  	{ .start = 0x1C0030, .end = 0x1C0030 },
> -	{ .start = 0x1C0550, .end = 0x1C0550 },
> +	{ .start = 0x1C0510, .end = 0x1C0550 },
>  	{ .start = 0x1C4030, .end = 0x1C4030 },
> -	{ .start = 0x1C4550, .end = 0x1C4550 },
> +	{ .start = 0x1C4510, .end = 0x1C4550 },
>  	{ .start = 0x1C8030, .end = 0x1C8030 },
> -	{ .start = 0x1C8550, .end = 0x1C8550 },
> +	{ .start = 0x1C8510, .end = 0x1C8550 },
>  	{ .start = 0x1D0030, .end = 0x1D0030 },
> -	{ .start = 0x1D0550, .end = 0x1D0550 },
> +	{ .start = 0x1D0510, .end = 0x1D0550 },
>  	{ .start = 0x1D4030, .end = 0x1D4030 },
> -	{ .start = 0x1D4550, .end = 0x1D4550 },
> +	{ .start = 0x1D4510, .end = 0x1D4550 },
>  	{ .start = 0x1D8030, .end = 0x1D8030 },
> -	{ .start = 0x1D8550, .end = 0x1D8550 },
> -	/* TODO: Other registers are not yet used */
> +	{ .start = 0x1D8510, .end = 0x1D8550 },
>  };
>  
>  static const struct i915_range xehp_shadowed_regs[] = {


More information about the Intel-gfx mailing list