summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gp106/acr_gp106.c
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2017-08-31 04:39:56 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-09-12 17:44:40 -0400
commitb79c165fd74f8269000f33691d8a480359e71585 (patch)
treecee4ed96460e3615e6d4fca629078c8e6cb83052 /drivers/gpu/nvgpu/gp106/acr_gp106.c
parent89772b03cb093b3556dd4803e5a8deee60046ac9 (diff)
gpu: nvgpu: WPR support update
- Enabled 64-bit address space WPR support - Update debug prints to log 64-bit values - Set gpccs wpr base based on mem aperture JIRA NVGPUGV100-7 Change-Id: I83ab9e14ee1db11f6814c07773e1d8ff13479bd2 Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1549214 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Deepak Goyal <dgoyal@nvidia.com> Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com> Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106/acr_gp106.c')
-rw-r--r--drivers/gpu/nvgpu/gp106/acr_gp106.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/drivers/gpu/nvgpu/gp106/acr_gp106.c b/drivers/gpu/nvgpu/gp106/acr_gp106.c
index bd47f467..9659c04a 100644
--- a/drivers/gpu/nvgpu/gp106/acr_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/acr_gp106.c
@@ -537,16 +537,16 @@ int gp106_pmu_populate_loader_cfg(struct gk20a *g,
537 g->ops.pmu.get_wpr(g, &wpr_inf); 537 g->ops.pmu.get_wpr(g, &wpr_inf);
538 addr_base += (wpr_inf.wpr_base); 538 addr_base += (wpr_inf.wpr_base);
539 539
540 gp106_dbg_pmu("pmu loader cfg u32 addrbase %x\n", (u32)addr_base); 540 gp106_dbg_pmu("pmu loader cfg addrbase 0x%llx\n", addr_base);
541 /*From linux*/ 541 /*From linux*/
542 addr_code = u64_lo32((addr_base + 542 addr_code = addr_base +
543 desc->app_start_offset + 543 desc->app_start_offset +
544 desc->app_resident_code_offset) ); 544 desc->app_resident_code_offset;
545 gp106_dbg_pmu("app start %d app res code off %d\n", 545 gp106_dbg_pmu("app start %d app res code off %d\n",
546 desc->app_start_offset, desc->app_resident_code_offset); 546 desc->app_start_offset, desc->app_resident_code_offset);
547 addr_data = u64_lo32((addr_base + 547 addr_data = addr_base +
548 desc->app_start_offset + 548 desc->app_start_offset +
549 desc->app_resident_data_offset) ); 549 desc->app_resident_data_offset;
550 gp106_dbg_pmu("app res data offset%d\n", 550 gp106_dbg_pmu("app res data offset%d\n",
551 desc->app_resident_data_offset); 551 desc->app_resident_data_offset);
552 gp106_dbg_pmu("bl start off %d\n", desc->bootloader_start_offset); 552 gp106_dbg_pmu("bl start off %d\n", desc->bootloader_start_offset);
@@ -607,23 +607,23 @@ int gp106_flcn_populate_bl_dmem_desc(struct gk20a *g,
607 */ 607 */
608 addr_base = p_lsfm->lsb_header.ucode_off; 608 addr_base = p_lsfm->lsb_header.ucode_off;
609 g->ops.pmu.get_wpr(g, &wpr_inf); 609 g->ops.pmu.get_wpr(g, &wpr_inf);
610 if (falconid == LSF_FALCON_ID_GPCCS) 610 if (falconid == LSF_FALCON_ID_GPCCS &&
611 g->pmu.wpr_buf.aperture == APERTURE_SYSMEM)
611 addr_base += g->pmu.wpr_buf.gpu_va; 612 addr_base += g->pmu.wpr_buf.gpu_va;
612 else 613 else
613 addr_base += wpr_inf.wpr_base; 614 addr_base += wpr_inf.wpr_base;
614 615
615 gp106_dbg_pmu("gen loader cfg %x u32 addrbase %x ID\n", (u32)addr_base, 616 gp106_dbg_pmu("falcon ID %x", p_lsfm->wpr_header.falcon_id);
616 p_lsfm->wpr_header.falcon_id); 617 gp106_dbg_pmu("gen loader cfg addrbase %llx ", addr_base);
617 addr_code = u64_lo32((addr_base + 618 addr_code = addr_base +
618 desc->app_start_offset + 619 desc->app_start_offset +
619 desc->app_resident_code_offset) ); 620 desc->app_resident_code_offset;
620 addr_data = u64_lo32((addr_base + 621 addr_data = addr_base +
621 desc->app_start_offset + 622 desc->app_start_offset +
622 desc->app_resident_data_offset) ); 623 desc->app_resident_data_offset;
623 624
624 gp106_dbg_pmu("gen cfg %x u32 addrcode %x & data %x load offset %xID\n", 625 gp106_dbg_pmu("gen cfg addrcode %llx data %llx load offset %x",
625 (u32)addr_code, (u32)addr_data, desc->bootloader_start_offset, 626 addr_code, addr_data, desc->bootloader_start_offset);
626 p_lsfm->wpr_header.falcon_id);
627 627
628 /* Populate the LOADER_CONFIG state */ 628 /* Populate the LOADER_CONFIG state */
629 memset((void *) ldr_cfg, 0, sizeof(struct flcn_bl_dmem_desc_v1)); 629 memset((void *) ldr_cfg, 0, sizeof(struct flcn_bl_dmem_desc_v1));