diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/nvgpu/os/linux/platform_gv11b_tegra.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/os/linux/platform_gv11b_tegra.c b/drivers/gpu/nvgpu/os/linux/platform_gv11b_tegra.c index edb3263c..1b4a5456 100644 --- a/drivers/gpu/nvgpu/os/linux/platform_gv11b_tegra.c +++ b/drivers/gpu/nvgpu/os/linux/platform_gv11b_tegra.c | |||
@@ -44,6 +44,21 @@ | |||
44 | #include "platform_gk20a_tegra.h" | 44 | #include "platform_gk20a_tegra.h" |
45 | #include "gv11b/gr_gv11b.h" | 45 | #include "gv11b/gr_gv11b.h" |
46 | 46 | ||
47 | #define EMC3D_GV11B_RATIO 500 | ||
48 | |||
49 | void gv11b_tegra_scale_init(struct device *dev) | ||
50 | { | ||
51 | struct gk20a_platform *platform = gk20a_get_platform(dev); | ||
52 | struct gk20a_scale_profile *profile = platform->g->scale_profile; | ||
53 | |||
54 | if (!profile) | ||
55 | return; | ||
56 | |||
57 | platform->g->emc3d_ratio = EMC3D_GV11B_RATIO; | ||
58 | |||
59 | gp10b_tegra_scale_init(dev); | ||
60 | } | ||
61 | |||
47 | static void gv11b_tegra_scale_exit(struct device *dev) | 62 | static void gv11b_tegra_scale_exit(struct device *dev) |
48 | { | 63 | { |
49 | struct gk20a_platform *platform = gk20a_get_platform(dev); | 64 | struct gk20a_platform *platform = gk20a_get_platform(dev); |
@@ -238,7 +253,7 @@ struct gk20a_platform gv11b_tegra_platform = { | |||
238 | .get_clk_freqs = gp10b_clk_get_freqs, | 253 | .get_clk_freqs = gp10b_clk_get_freqs, |
239 | 254 | ||
240 | /* frequency scaling configuration */ | 255 | /* frequency scaling configuration */ |
241 | .initscale = gp10b_tegra_scale_init, | 256 | .initscale = gv11b_tegra_scale_init, |
242 | .prescale = gp10b_tegra_prescale, | 257 | .prescale = gp10b_tegra_prescale, |
243 | .postscale = gp10b_tegra_postscale, | 258 | .postscale = gp10b_tegra_postscale, |
244 | .devfreq_governor = "nvhost_podgov", | 259 | .devfreq_governor = "nvhost_podgov", |