summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
diff options
context:
space:
mode:
authorThomas Fleury <tfleury@nvidia.com>2017-04-19 19:47:13 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-05-24 07:55:36 -0400
commitb03afb6d5c4bbca5a26cc95027491c816e5e1f6d (patch)
treeb59ae1b881877cf52ca921a5bf9d884f78fac648 /drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
parenta823c72219d3bb96bc9489e84b64e0038e7119d7 (diff)
gpu: nvgpu: add ioctls to get current timeslice
Add the following ioctls - NVGPU_CHANNEL_IOCTL_GET_TIMESLICE for channel timeslice in us - NVGPU_TSG_IOCTL_GET_TIMESLICE for TSG timeslice in us If timeslice has not been set explicitly, ioctl returns the default timeslice that will be used when programming the runlist entry. Bug 1883271 Change-Id: Ib18fdd836323b1a2d4efceb1e27d07713bd6fca5 Signed-off-by: Thomas Fleury <tfleury@nvidia.com> Reviewed-on: http://git-master/r/1469040 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/tsg_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/tsg_gk20a.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c b/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
index f9884cfb..9cb5b262 100644
--- a/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
@@ -211,6 +211,16 @@ int gk20a_tsg_set_timeslice(struct tsg_gk20a *tsg, u32 timeslice)
211 return g->ops.fifo.tsg_set_timeslice(tsg, timeslice); 211 return g->ops.fifo.tsg_set_timeslice(tsg, timeslice);
212} 212}
213 213
214u32 gk20a_tsg_get_timeslice(struct tsg_gk20a *tsg)
215{
216 struct gk20a *g = tsg->g;
217
218 if (!tsg->timeslice_us)
219 return g->ops.fifo.default_timeslice_us(g);
220
221 return tsg->timeslice_us;
222}
223
214static void release_used_tsg(struct fifo_gk20a *f, struct tsg_gk20a *tsg) 224static void release_used_tsg(struct fifo_gk20a *f, struct tsg_gk20a *tsg)
215{ 225{
216 nvgpu_mutex_acquire(&f->tsg_inuse_mutex); 226 nvgpu_mutex_acquire(&f->tsg_inuse_mutex);