summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a
diff options
context:
space:
mode:
authorVijayakumar <vsubbu@nvidia.com>2014-08-22 07:52:57 -0400
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:11:04 -0400
commita52a50d407d6ac4b6f64c8b71e93d6cbd028e5f7 (patch)
treeb2aded4cb4f19a14fa0443bc587a6164c234ac30 /drivers/gpu/nvgpu/gk20a
parent08983f727f0f3574aebb07027060b75e5b6dac6c (diff)
gpu: nvgpu: gm20b: dynamically detect priv security for secure boot of falcon
based on the config setting and fuse secure no non secure boot is done Change-Id: I5937ba945c5a3a86f72e0f2a9078fcde01977137 Signed-off-by: Vijayakumar <vsubbu@nvidia.com> Reviewed-on: http://git-master/r/487684 Tested-by: Terje Bergstrom <tbergstrom@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h1
-rw-r--r--drivers/gpu/nvgpu/gk20a/hal.c4
-rw-r--r--drivers/gpu/nvgpu/gk20a/hal_gk20a.c1
3 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index b813541a..de234972 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -297,6 +297,7 @@ struct gpu_ops {
297 int (*init_clk_support)(struct gk20a *g); 297 int (*init_clk_support)(struct gk20a *g);
298 int (*suspend_clk_support)(struct gk20a *g); 298 int (*suspend_clk_support)(struct gk20a *g);
299 } clk; 299 } clk;
300 bool privsecurity;
300}; 301};
301 302
302struct gk20a { 303struct gk20a {
diff --git a/drivers/gpu/nvgpu/gk20a/hal.c b/drivers/gpu/nvgpu/gk20a/hal.c
index 1aae0304..8d1a29dd 100644
--- a/drivers/gpu/nvgpu/gk20a/hal.c
+++ b/drivers/gpu/nvgpu/gk20a/hal.c
@@ -26,7 +26,9 @@ int gpu_init_hal(struct gk20a *g)
26 gk20a_init_hal(&g->ops); 26 gk20a_init_hal(&g->ops);
27 break; 27 break;
28 case GK20A_GPUID_GM20B: 28 case GK20A_GPUID_GM20B:
29 gm20b_init_hal(&g->ops); 29 gk20a_dbg_info("gm20b detected");
30 if (gm20b_init_hal(&g->ops))
31 return -ENODEV;
30 break; 32 break;
31 default: 33 default:
32 gk20a_err(&g->dev->dev, "no support for %x", ver); 34 gk20a_err(&g->dev->dev, "no support for %x", ver);
diff --git a/drivers/gpu/nvgpu/gk20a/hal_gk20a.c b/drivers/gpu/nvgpu/gk20a/hal_gk20a.c
index 3dae9450..1b8157f1 100644
--- a/drivers/gpu/nvgpu/gk20a/hal_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/hal_gk20a.c
@@ -44,6 +44,7 @@ struct gpu_ops gk20a_ops = {
44int gk20a_init_hal(struct gpu_ops *gops) 44int gk20a_init_hal(struct gpu_ops *gops)
45{ 45{
46 *gops = gk20a_ops; 46 *gops = gk20a_ops;
47 gops->privsecurity = 0;
47 gk20a_init_ltc(gops); 48 gk20a_init_ltc(gops);
48 gk20a_init_gr_ops(gops); 49 gk20a_init_gr_ops(gops);
49 gk20a_init_fb(gops); 50 gk20a_init_fb(gops);