diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index b963ad96..3dda1cbf 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -3874,6 +3874,24 @@ long gk20a_channel_ioctl(struct file *filp, | |||
3874 | err = -EINVAL; | 3874 | err = -EINVAL; |
3875 | } | 3875 | } |
3876 | break; | 3876 | break; |
3877 | case NVGPU_IOCTL_CHANNEL_SET_BOOSTED_CTX: | ||
3878 | if (ch->g->ops.gr.set_boosted_ctx) { | ||
3879 | bool boost = | ||
3880 | ((struct nvgpu_boosted_ctx_args *)buf)->boost; | ||
3881 | |||
3882 | err = gk20a_busy(dev); | ||
3883 | if (err) { | ||
3884 | dev_err(dev, | ||
3885 | "%s: failed to host gk20a for ioctl cmd: 0x%x", | ||
3886 | __func__, cmd); | ||
3887 | break; | ||
3888 | } | ||
3889 | err = ch->g->ops.gr.set_boosted_ctx(ch, boost); | ||
3890 | gk20a_idle(dev); | ||
3891 | } else { | ||
3892 | err = -EINVAL; | ||
3893 | } | ||
3894 | break; | ||
3877 | default: | 3895 | default: |
3878 | dev_dbg(dev, "unrecognized ioctl cmd: 0x%x", cmd); | 3896 | dev_dbg(dev, "unrecognized ioctl cmd: 0x%x", cmd); |
3879 | err = -ENOTTY; | 3897 | err = -ENOTTY; |