diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index 223c7727..2dfe9e58 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c | |||
@@ -165,6 +165,11 @@ int gk20a_finalize_poweron(struct gk20a *g) | |||
165 | goto done; | 165 | goto done; |
166 | } | 166 | } |
167 | 167 | ||
168 | if (g->ops.acr.acr_sw_init != NULL && | ||
169 | nvgpu_is_enabled(g, NVGPU_SEC_PRIVSECURITY)) { | ||
170 | g->ops.acr.acr_sw_init(g, &g->acr); | ||
171 | } | ||
172 | |||
168 | if (g->ops.bios.init) { | 173 | if (g->ops.bios.init) { |
169 | err = g->ops.bios.init(g); | 174 | err = g->ops.bios.init(g); |
170 | } | 175 | } |
@@ -273,6 +278,15 @@ int gk20a_finalize_poweron(struct gk20a *g) | |||
273 | } | 278 | } |
274 | } | 279 | } |
275 | 280 | ||
281 | if (g->acr.bootstrap_hs_acr != NULL && | ||
282 | nvgpu_is_enabled(g, NVGPU_SEC_PRIVSECURITY)) { | ||
283 | err = g->acr.bootstrap_hs_acr(g, &g->acr, &g->acr.acr); | ||
284 | if (err != 0) { | ||
285 | nvgpu_err(g, "ACR bootstrap failed"); | ||
286 | goto done; | ||
287 | } | ||
288 | } | ||
289 | |||
276 | if (g->ops.pmu.is_pmu_supported(g)) { | 290 | if (g->ops.pmu.is_pmu_supported(g)) { |
277 | err = nvgpu_init_pmu_support(g); | 291 | err = nvgpu_init_pmu_support(g); |
278 | if (err) { | 292 | if (err) { |