diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c index a8ebaf7a..64828a3f 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |||
@@ -2462,6 +2462,7 @@ static int gk20a_prepare_ucode(struct gk20a *g) | |||
2462 | 2462 | ||
2463 | static int gk20a_init_pmu_setup_sw(struct gk20a *g) | 2463 | static int gk20a_init_pmu_setup_sw(struct gk20a *g) |
2464 | { | 2464 | { |
2465 | struct gk20a_platform *platform = dev_get_drvdata(g->dev); | ||
2465 | struct pmu_gk20a *pmu = &g->pmu; | 2466 | struct pmu_gk20a *pmu = &g->pmu; |
2466 | struct mm_gk20a *mm = &g->mm; | 2467 | struct mm_gk20a *mm = &g->mm; |
2467 | struct vm_gk20a *vm = &mm->pmu.vm; | 2468 | struct vm_gk20a *vm = &mm->pmu.vm; |
@@ -2514,7 +2515,8 @@ static int gk20a_init_pmu_setup_sw(struct gk20a *g) | |||
2514 | 2515 | ||
2515 | pmu_seq_init(pmu); | 2516 | pmu_seq_init(pmu); |
2516 | 2517 | ||
2517 | INIT_WORK(&pmu->pg_init, pmu_setup_hw); | 2518 | if (platform->can_elpg) |
2519 | INIT_WORK(&pmu->pg_init, pmu_setup_hw); | ||
2518 | 2520 | ||
2519 | err = gk20a_gmmu_alloc_map(vm, GK20A_PMU_SEQ_BUF_SIZE, &pmu->seq_buf); | 2521 | err = gk20a_gmmu_alloc_map(vm, GK20A_PMU_SEQ_BUF_SIZE, &pmu->seq_buf); |
2520 | if (err) { | 2522 | if (err) { |