diff options
author | Vijayakumar <vsubbu@nvidia.com> | 2015-06-24 03:26:50 -0400 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2015-06-26 16:14:53 -0400 |
commit | 30d399de307befc4edc2b8ca66c36ad2440d34f1 (patch) | |
tree | 6e94200cc3f0c8d320de3c413ec471939990355c /drivers/gpu/nvgpu/gk20a/gr_gk20a.c | |
parent | 25b540e5c9b4febaa0aedc8cfe3b3fcf6cfd56b8 (diff) |
gpu: nvgpu: load secure gpccs using dma
bug 200080684
use new cmd defined in ucode for loading
GR falcons. flip PRIV load flag in lsb
header to indicate using dma. use pmu msg
as cmd completion for new cmd instead of
polling fecs mailbox. also move
check for using dma in non secure boot path
to hal.
Change-Id: I22582a705bd1ae0603f858e1fe200d72e6794a81
Signed-off-by: Vijayakumar <vsubbu@nvidia.com>
Reviewed-on: http://git-master/r/761625
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c index edd4c6c8..e232bf17 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c | |||
@@ -2128,7 +2128,7 @@ int gr_gk20a_load_ctxsw_ucode(struct gk20a *g) | |||
2128 | * In case bootloader is not supported, revert to the old way of | 2128 | * In case bootloader is not supported, revert to the old way of |
2129 | * loading gr ucode, without the faster bootstrap routine. | 2129 | * loading gr ucode, without the faster bootstrap routine. |
2130 | */ | 2130 | */ |
2131 | if (g->gpu_characteristics.arch > NVGPU_GPU_ARCH_GM200) { | 2131 | if (!g->ops.gr_ctx.use_dma_for_fw_bootstrap) { |
2132 | gr_gk20a_load_falcon_dmem(g); | 2132 | gr_gk20a_load_falcon_dmem(g); |
2133 | gr_gk20a_load_falcon_imem(g); | 2133 | gr_gk20a_load_falcon_imem(g); |
2134 | gr_gk20a_start_falcon_ucode(g); | 2134 | gr_gk20a_start_falcon_ucode(g); |
@@ -2161,7 +2161,7 @@ static int gr_gk20a_wait_ctxsw_ready(struct gk20a *g) | |||
2161 | return ret; | 2161 | return ret; |
2162 | } | 2162 | } |
2163 | 2163 | ||
2164 | if (!(g->gpu_characteristics.arch > NVGPU_GPU_ARCH_GM200)) | 2164 | if (g->ops.gr_ctx.use_dma_for_fw_bootstrap || g->ops.securegpccs) |
2165 | gk20a_writel(g, gr_fecs_current_ctx_r(), | 2165 | gk20a_writel(g, gr_fecs_current_ctx_r(), |
2166 | gr_fecs_current_ctx_valid_false_f()); | 2166 | gr_fecs_current_ctx_valid_false_f()); |
2167 | 2167 | ||