diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2017-07-05 06:42:29 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-07-06 02:25:27 -0400 |
commit | 79a79b8ae6987e5620c9bc7ee080fe637a6ca57b (patch) | |
tree | 5e482d8d1a584e9496b2daa880adfd00b5f65ecb /drivers/gpu/nvgpu/gp106 | |
parent | 3afac13d66ee7026555c0b0558d898a4f189b051 (diff) |
gpu: nvgpu: falcon bootstrap support
- Added falcon interface/HAL to bootstrap
falcon by taking boot vector as parameter
- Replaced falcon bootstrap code in multiple
files with nvgpu_flcn_bootstrap() method
JIRA NVGPU-102
Change-Id: I4324824c50c6196d8b7ecf981f815ec778da2fd9
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master/r/1513643
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106')
-rw-r--r-- | drivers/gpu/nvgpu/gp106/sec2_gp106.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/gpu/nvgpu/gp106/sec2_gp106.c b/drivers/gpu/nvgpu/gp106/sec2_gp106.c index ccd1b3ad..f5e7f2be 100644 --- a/drivers/gpu/nvgpu/gp106/sec2_gp106.c +++ b/drivers/gpu/nvgpu/gp106/sec2_gp106.c | |||
@@ -110,11 +110,8 @@ int bl_bootstrap_sec2(struct nvgpu_pmu *pmu, | |||
110 | gk20a_writel(g, psec_falcon_mailbox0_r(), 0xDEADA5A5); | 110 | gk20a_writel(g, psec_falcon_mailbox0_r(), 0xDEADA5A5); |
111 | 111 | ||
112 | virt_addr = pmu_bl_gm10x_desc->bl_start_tag << 8; | 112 | virt_addr = pmu_bl_gm10x_desc->bl_start_tag << 8; |
113 | gk20a_writel(g, psec_falcon_bootvec_r(), | ||
114 | psec_falcon_bootvec_vec_f(virt_addr)); | ||
115 | 113 | ||
116 | gk20a_writel(g, psec_falcon_cpuctl_r(), | 114 | nvgpu_flcn_bootstrap(&g->sec2_flcn, virt_addr); |
117 | psec_falcon_cpuctl_startcpu_f(1)); | ||
118 | 115 | ||
119 | return 0; | 116 | return 0; |
120 | } | 117 | } |
@@ -198,10 +195,6 @@ int init_sec2_setup_hw1(struct gk20a *g, | |||
198 | data |= psec_fbif_ctl_allow_phys_no_ctx_allow_f(); | 195 | data |= psec_fbif_ctl_allow_phys_no_ctx_allow_f(); |
199 | gk20a_writel(g, psec_fbif_ctl_r(), data); | 196 | gk20a_writel(g, psec_fbif_ctl_r(), data); |
200 | 197 | ||
201 | data = gk20a_readl(g, psec_falcon_dmactl_r()); | ||
202 | data &= ~(psec_falcon_dmactl_require_ctx_f(1)); | ||
203 | gk20a_writel(g, psec_falcon_dmactl_r(), data); | ||
204 | |||
205 | /* setup apertures - virtual */ | 198 | /* setup apertures - virtual */ |
206 | gk20a_writel(g, psec_fbif_transcfg_r(GK20A_PMU_DMAIDX_UCODE), | 199 | gk20a_writel(g, psec_fbif_transcfg_r(GK20A_PMU_DMAIDX_UCODE), |
207 | psec_fbif_transcfg_mem_type_physical_f() | | 200 | psec_fbif_transcfg_mem_type_physical_f() | |