gpu: nvgu: Support SET_BES_CROP_DEBUG3 sw method

The new SET_BES_CROP_DEBUG3 sw method is used to flip two fields
in the NV_PGRAPH_PRI_BES_CROP_DEBUG3 register.  The sw method is
used by the user space driver to disable enough ROP optimizations
to maintain ZBC state of target tiles.

Bug 1942454

Change-Id: I3109fb4120674b15db4998693d0aa65bf0c3c8b5
Signed-off-by: Lauri Peltonen <lpeltonen@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1516205
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Lauri Peltonen
2017-07-10 15:06:31 +03:00
committed by mobile promotions
parent 4074484f75
commit 2272cedfba
3 changed files with 28 additions and 0 deletions

View File

@@ -1177,6 +1177,9 @@ static int gr_gv11b_handle_sw_method(struct gk20a *g, u32 addr,
case NVC397_SET_SKEDCHECK:
gr_gv11b_set_skedcheck(g, data);
break;
case NVC397_SET_BES_CROP_DEBUG3:
g->ops.gr.set_bes_crop_debug3(g, data);
break;
default:
goto fail;
}

View File

@@ -41,6 +41,7 @@ enum {
#define NVC397_SET_GO_IDLE_TIMEOUT 0x022c
#define NVC397_SET_TEX_IN_DBG 0x10bc
#define NVC397_SET_SKEDCHECK 0x10c0
#define NVC397_SET_BES_CROP_DEBUG3 0x10c4
#define NVC397_SET_TEX_IN_DBG_TSL1_RVCH_INVALIDATE 0x1
#define NVC397_SET_TEX_IN_DBG_SM_L1TAG_CTRL_CACHE_SURFACE_LD 0x2

View File

@@ -3918,6 +3918,30 @@ static inline u32 gr_bes_crop_debug3_comp_vdc_4to2_disable_m(void)
{
return 0x1 << 31;
}
static inline u32 gr_bes_crop_debug3_blendopt_read_suppress_m(void)
{
return 0x1 << 1;
}
static inline u32 gr_bes_crop_debug3_blendopt_read_suppress_disabled_f(void)
{
return 0x0;
}
static inline u32 gr_bes_crop_debug3_blendopt_read_suppress_enabled_f(void)
{
return 0x2;
}
static inline u32 gr_bes_crop_debug3_blendopt_fill_override_m(void)
{
return 0x1 << 2;
}
static inline u32 gr_bes_crop_debug3_blendopt_fill_override_disabled_f(void)
{
return 0x0;
}
static inline u32 gr_bes_crop_debug3_blendopt_fill_override_enabled_f(void)
{
return 0x4;
}
static inline u32 gr_bes_crop_settings_r(void)
{
return 0x00408958;