summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
diff options
context:
space:
mode:
authorVijayakumar <vsubbu@nvidia.com>2014-10-17 03:00:03 -0400
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:11:45 -0400
commitc0b619c3cd6da315f22e0506e89530ae7b594d6d (patch)
tree72d5e26cde60412825769c5c0e50c27524b88eea /drivers/gpu/nvgpu/gm20b/gr_gm20b.c
parentc414d4128d9766b4934023028669a83389c406fc (diff)
gpu: nvgpu: gm20b: write gpccs start only once
Writing start bit twice can confuse falcon and results in random behavior. Bug 200040021 Change-Id: I62eb8e4632ac4fc471d931155471084ee0f9d0a4 Signed-off-by: Vijayakumar <vsubbu@nvidia.com> Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/gr_gm20b.c')
-rw-r--r--drivers/gpu/nvgpu/gm20b/gr_gm20b.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
index 6bf0ed27..1256d4a6 100644
--- a/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/gr_gm20b.c
@@ -666,9 +666,11 @@ static int gr_gm20b_load_ctxsw_ucode_segments(struct gk20a *g, u64 addr_base,
666 gk20a_writel(g, reg_offset + gr_fecs_bootvec_r(), 666 gk20a_writel(g, reg_offset + gr_fecs_bootvec_r(),
667 gr_fecs_bootvec_vec_f(segments->boot_entry)); 667 gr_fecs_bootvec_vec_f(segments->boot_entry));
668 668
669 /* Write to CPUCTL to start the falcon */ 669 /* start the falcon immediately if PRIV security is disabled*/
670 gk20a_writel(g, reg_offset + gr_fecs_cpuctl_r(), 670 if (!g->ops.privsecurity) {
671 gr_fecs_cpuctl_startcpu_f(0x01)); 671 gk20a_writel(g, reg_offset + gr_fecs_cpuctl_r(),
672 gr_fecs_cpuctl_startcpu_f(0x01));
673 }
672 674
673 return 0; 675 return 0;
674} 676}