From b014a0b2c18cf8661ef5f45502add906c75ca0ce Mon Sep 17 00:00:00 2001 From: Terje Bergstrom Date: Sun, 17 Dec 2017 13:25:33 -0800 Subject: gpu: nvgpu: gv11b: Skip disabling vdc_4to2 gr_gv11b_init_fs_state() calls gr_gm20b_init_fs_state() which disables vdc_4to2. This should no longer be done on gv11b, so instead of calling gr_gm20b_init_fs_state() copy the relevant lines to gr_gv11b_init_fs_state() and drop vdc_4to2 disable. gv11b_ltc_init_fs_state() also disables it to match the state. Remove that disable, too. Change-Id: I3a3fd87a3e8836e495cb818570c971b3d29a6dd1 Signed-off-by: Terje Bergstrom Reviewed-on: https://git-master.nvidia.com/r/1619966 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Seema Khowala GVS: Gerrit_Virtual_Submit Tested-by: Wei Sun Reviewed-by: Seshendra Gadagottu Reviewed-by: Alex Waterman --- drivers/gpu/nvgpu/gv11b/gr_gv11b.c | 16 +++++++++++++++- drivers/gpu/nvgpu/gv11b/ltc_gv11b.c | 4 ---- 2 files changed, 15 insertions(+), 5 deletions(-) (limited to 'drivers/gpu/nvgpu/gv11b') diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c index 8514cc1e..8d8f56f6 100644 --- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c @@ -2382,6 +2382,7 @@ void gr_gv11b_set_preemption_buffer_va(struct gk20a *g, int gr_gv11b_init_fs_state(struct gk20a *g) { u32 data; + int err; gk20a_dbg_fn(""); @@ -2401,7 +2402,20 @@ int gr_gv11b_init_fs_state(struct gk20a *g) g->gr.fecs_feature_override_ecc_val); } - return gr_gm20b_init_fs_state(g); + err = gr_gk20a_init_fs_state(g); + if (err) + return err; + + g->ops.gr.load_tpc_mask(g); + + gk20a_writel(g, gr_bes_zrop_settings_r(), + gr_bes_zrop_settings_num_active_ltcs_f(g->ltc_count)); + gk20a_writel(g, gr_bes_crop_settings_r(), + gr_bes_crop_settings_num_active_ltcs_f(g->ltc_count)); + + g->ops.gr.load_smid_config(g); + + return err; } void gv11b_gr_get_esr_sm_sel(struct gk20a *g, u32 gpc, u32 tpc, diff --git a/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c b/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c index a199e024..8661b420 100644 --- a/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c @@ -69,10 +69,6 @@ void gv11b_ltc_init_fs_state(struct gk20a *g) g->ltc_count = gk20a_readl(g, pri_ringmaster_enum_ltc_r()); gk20a_dbg_info("%u ltcs out of %u", g->ltc_count, g->max_ltc_count); - gk20a_writel(g, ltc_ltcs_ltss_dstg_cfg0_r(), - gk20a_readl(g, ltc_ltc0_lts0_dstg_cfg0_r()) | - ltc_ltcs_ltss_dstg_cfg0_vdc_4to2_disable_m()); - /* Disable LTC interrupts */ reg = gk20a_readl(g, ltc_ltcs_ltss_intr_r()); reg &= ~ltc_ltcs_ltss_intr_en_evicted_cb_m(); -- cgit v1.2.2