diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c index de16e403..45087094 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |||
@@ -1542,12 +1542,15 @@ static int gk20a_prepare_ucode(struct gk20a *g) | |||
1542 | void *ucode_ptr; | 1542 | void *ucode_ptr; |
1543 | DEFINE_DMA_ATTRS(attrs); | 1543 | DEFINE_DMA_ATTRS(attrs); |
1544 | 1544 | ||
1545 | if (g->pmu_fw) { | ||
1546 | gk20a_init_pmu(pmu); | ||
1547 | return 0; | ||
1548 | } | ||
1549 | |||
1550 | g->pmu_fw = gk20a_request_firmware(g, GK20A_PMU_UCODE_IMAGE); | ||
1545 | if (!g->pmu_fw) { | 1551 | if (!g->pmu_fw) { |
1546 | g->pmu_fw = gk20a_request_firmware(g, GK20A_PMU_UCODE_IMAGE); | 1552 | gk20a_err(d, "failed to load pmu ucode!!"); |
1547 | if (!g->pmu_fw) { | 1553 | return err; |
1548 | gk20a_err(d, "failed to load pmu ucode!!"); | ||
1549 | return err; | ||
1550 | } | ||
1551 | } | 1554 | } |
1552 | 1555 | ||
1553 | gk20a_dbg_fn("firmware loaded"); | 1556 | gk20a_dbg_fn("firmware loaded"); |