diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 33 |
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 | ||
743 | static u32 fecs_current_ctx_data(struct gk20a *g, struct nvgpu_mem *inst_block) | 743 | static 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 | ||