summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.c
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2016-04-27 09:32:43 -0400
committerTerje Bergstrom <tbergstrom@nvidia.com>2016-05-09 16:16:53 -0400
commit771f742703bb56598bc341ec4eaee5ff7c036d4d (patch)
treea74d32db43c4fe87ee6d55a587a8f6de12490bbf /drivers/gpu/nvgpu/gk20a/gk20a.c
parentd868b654419cfa096f563c9281a2a5cc067c23db (diff)
gpu: nvgpu: add supported preemptions to gpu characteristics
Add below flag fields to gpu characteristics to indicate supported and default preemption modes on platform for graphics and compute __u32 graphics_preemption_mode_flags; __u32 compute_preemption_mode_flags; __u32 default_graphics_preempt_mode; __u32 default_compute_preempt_mode; Add struct nvgpu_preemption_modes_rec to struct gr_gk20a to store these values locally Use platform specific get_preemption_mode_flags() to get the flags and define gk20a/gm20b specific get_preemption_mode_flags() API Bug 1646259 Change-Id: I80193c0d988dc93bd96585f9aa631fd817f4dfa3 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/1133595 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index 4283e1ad..c07e7e4b 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -2142,6 +2142,17 @@ int gk20a_init_gpu_characteristics(struct gk20a *g)
2142 if (platform->clk_round_rate) 2142 if (platform->clk_round_rate)
2143 gpu->max_freq = platform->clk_round_rate(g->dev, UINT_MAX); 2143 gpu->max_freq = platform->clk_round_rate(g->dev, UINT_MAX);
2144 2144
2145 g->ops.gr.get_preemption_mode_flags(g, &g->gr.preemption_mode_rec);
2146 gpu->graphics_preemption_mode_flags =
2147 g->gr.preemption_mode_rec.graphics_preemption_mode_flags;
2148 gpu->compute_preemption_mode_flags =
2149 g->gr.preemption_mode_rec.compute_preemption_mode_flags;
2150 gpu->default_graphics_preempt_mode =
2151 g->gr.preemption_mode_rec.default_graphics_preempt_mode;
2152 gpu->default_compute_preempt_mode =
2153 g->gr.preemption_mode_rec.default_compute_preempt_mode;
2154
2155
2145 return 0; 2156 return 0;
2146} 2157}
2147 2158