diff options
author | Vijayakumar <vsubbu@nvidia.com> | 2014-08-22 07:52:57 -0400 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:11:04 -0400 |
commit | a52a50d407d6ac4b6f64c8b71e93d6cbd028e5f7 (patch) | |
tree | b2aded4cb4f19a14fa0443bc587a6164c234ac30 /drivers/gpu/nvgpu/gk20a | |
parent | 08983f727f0f3574aebb07027060b75e5b6dac6c (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.h | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/hal.c | 4 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/hal_gk20a.c | 1 |
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 | ||
302 | struct gk20a { | 303 | struct 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 = { | |||
44 | int gk20a_init_hal(struct gpu_ops *gops) | 44 | int 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); |