summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c33
1 files changed, 19 insertions, 14 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index 7160ab6f..bdb54325 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -742,13 +742,14 @@ void gr_gk20a_ctx_patch_write(struct gk20a *g,
742 742
743static u32 fecs_current_ctx_data(struct gk20a *g, struct nvgpu_mem *inst_block) 743static u32 fecs_current_ctx_data(struct gk20a *g, struct nvgpu_mem *inst_block)
744{ 744{
745 u32 ptr = u64_lo32(nvgpu_inst_block_addr(g, inst_block) 745 u64 ptr = nvgpu_inst_block_addr(g, inst_block) >>
746 >> ram_in_base_shift_v()); 746 ram_in_base_shift_v();
747 u32 aperture = nvgpu_aperture_mask(g, inst_block, 747 u32 aperture = nvgpu_aperture_mask(g, inst_block,
748 gr_fecs_current_ctx_target_sys_mem_ncoh_f(), 748 gr_fecs_current_ctx_target_sys_mem_ncoh_f(),
749 gr_fecs_current_ctx_target_vid_mem_f()); 749 gr_fecs_current_ctx_target_sys_mem_coh_f(),
750 gr_fecs_current_ctx_target_vid_mem_f());
750 751
751 return gr_fecs_current_ctx_ptr_f(ptr) | aperture | 752 return gr_fecs_current_ctx_ptr_f(u64_lo32(ptr)) | aperture |
752 gr_fecs_current_ctx_valid_f(1); 753 gr_fecs_current_ctx_valid_f(1);
753} 754}
754 755
@@ -2171,16 +2172,18 @@ void gr_gk20a_load_falcon_bind_instblk(struct gk20a *g)
2171 2172
2172 inst_ptr = nvgpu_inst_block_addr(g, &ucode_info->inst_blk_desc); 2173 inst_ptr = nvgpu_inst_block_addr(g, &ucode_info->inst_blk_desc);
2173 gk20a_writel(g, gr_fecs_new_ctx_r(), 2174 gk20a_writel(g, gr_fecs_new_ctx_r(),
2174 gr_fecs_new_ctx_ptr_f(inst_ptr >> 12) | 2175 gr_fecs_new_ctx_ptr_f(inst_ptr >> 12) |
2175 nvgpu_aperture_mask(g, &ucode_info->inst_blk_desc, 2176 nvgpu_aperture_mask(g, &ucode_info->inst_blk_desc,
2176 gr_fecs_new_ctx_target_sys_mem_ncoh_f(), 2177 gr_fecs_new_ctx_target_sys_mem_ncoh_f(),
2178 gr_fecs_new_ctx_target_sys_mem_coh_f(),
2177 gr_fecs_new_ctx_target_vid_mem_f()) | 2179 gr_fecs_new_ctx_target_vid_mem_f()) |
2178 gr_fecs_new_ctx_valid_m()); 2180 gr_fecs_new_ctx_valid_m());
2179 2181
2180 gk20a_writel(g, gr_fecs_arb_ctx_ptr_r(), 2182 gk20a_writel(g, gr_fecs_arb_ctx_ptr_r(),
2181 gr_fecs_arb_ctx_ptr_ptr_f(inst_ptr >> 12) | 2183 gr_fecs_arb_ctx_ptr_ptr_f(inst_ptr >> 12) |
2182 nvgpu_aperture_mask(g, &ucode_info->inst_blk_desc, 2184 nvgpu_aperture_mask(g, &ucode_info->inst_blk_desc,
2183 gr_fecs_arb_ctx_ptr_target_sys_mem_ncoh_f(), 2185 gr_fecs_arb_ctx_ptr_target_sys_mem_ncoh_f(),
2186 gr_fecs_arb_ctx_ptr_target_sys_mem_coh_f(),
2184 gr_fecs_arb_ctx_ptr_target_vid_mem_f())); 2187 gr_fecs_arb_ctx_ptr_target_vid_mem_f()));
2185 2188
2186 gk20a_writel(g, gr_fecs_arb_ctx_cmd_r(), 0x7); 2189 gk20a_writel(g, gr_fecs_arb_ctx_cmd_r(), 0x7);
@@ -4384,8 +4387,9 @@ static int gk20a_init_gr_setup_hw(struct gk20a *g)
4384 4387
4385 gk20a_writel(g, fb_mmu_debug_wr_r(), 4388 gk20a_writel(g, fb_mmu_debug_wr_r(),
4386 nvgpu_aperture_mask(g, &gr->mmu_wr_mem, 4389 nvgpu_aperture_mask(g, &gr->mmu_wr_mem,
4387 fb_mmu_debug_wr_aperture_sys_mem_ncoh_f(), 4390 fb_mmu_debug_wr_aperture_sys_mem_ncoh_f(),
4388 fb_mmu_debug_wr_aperture_vid_mem_f()) | 4391 fb_mmu_debug_wr_aperture_sys_mem_coh_f(),
4392 fb_mmu_debug_wr_aperture_vid_mem_f()) |
4389 fb_mmu_debug_wr_vol_false_f() | 4393 fb_mmu_debug_wr_vol_false_f() |
4390 fb_mmu_debug_wr_addr_f(addr)); 4394 fb_mmu_debug_wr_addr_f(addr));
4391 4395
@@ -4394,8 +4398,9 @@ static int gk20a_init_gr_setup_hw(struct gk20a *g)
4394 4398
4395 gk20a_writel(g, fb_mmu_debug_rd_r(), 4399 gk20a_writel(g, fb_mmu_debug_rd_r(),
4396 nvgpu_aperture_mask(g, &gr->mmu_rd_mem, 4400 nvgpu_aperture_mask(g, &gr->mmu_rd_mem,
4397 fb_mmu_debug_wr_aperture_sys_mem_ncoh_f(), 4401 fb_mmu_debug_wr_aperture_sys_mem_ncoh_f(),
4398 fb_mmu_debug_rd_aperture_vid_mem_f()) | 4402 fb_mmu_debug_wr_aperture_sys_mem_coh_f(),
4403 fb_mmu_debug_rd_aperture_vid_mem_f()) |
4399 fb_mmu_debug_rd_vol_false_f() | 4404 fb_mmu_debug_rd_vol_false_f() |
4400 fb_mmu_debug_rd_addr_f(addr)); 4405 fb_mmu_debug_rd_addr_f(addr));
4401 4406