diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index ff87edc2..c61b47c5 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c | |||
@@ -1040,6 +1040,21 @@ int gk20a_pm_finalize_poweron(struct device *dev) | |||
1040 | if (g->irq_stall != g->irq_nonstall) | 1040 | if (g->irq_stall != g->irq_nonstall) |
1041 | enable_irq(g->irq_nonstall); | 1041 | enable_irq(g->irq_nonstall); |
1042 | 1042 | ||
1043 | if (g->ops.xve.available_speeds) { | ||
1044 | u32 speed; | ||
1045 | |||
1046 | g->ops.xve.sw_init(dev); | ||
1047 | g->ops.xve.available_speeds(g, &speed); | ||
1048 | |||
1049 | /* Set to max speed */ | ||
1050 | speed = 1 << (fls(speed) - 1); | ||
1051 | err = g->ops.xve.set_speed(g, speed); | ||
1052 | if (err) { | ||
1053 | gk20a_err(dev, "Failed to set PCIe bus speed!\n"); | ||
1054 | goto done; | ||
1055 | } | ||
1056 | } | ||
1057 | |||
1043 | done: | 1058 | done: |
1044 | return err; | 1059 | return err; |
1045 | } | 1060 | } |