summaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/linux/nvgpu.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/include/uapi/linux/nvgpu.h b/include/uapi/linux/nvgpu.h
index d97f8fb6..b14610bd 100644
--- a/include/uapi/linux/nvgpu.h
+++ b/include/uapi/linux/nvgpu.h
@@ -141,7 +141,7 @@ struct nvgpu_gpu_zbc_query_table_args {
141#define NVGPU_GPU_FLAGS_SUPPORT_DETERMINISTIC_SUBMIT_FULL (1ULL << 19) 141#define NVGPU_GPU_FLAGS_SUPPORT_DETERMINISTIC_SUBMIT_FULL (1ULL << 19)
142/* IO coherence support is available */ 142/* IO coherence support is available */
143#define NVGPU_GPU_FLAGS_SUPPORT_IO_COHERENCE (1ULL << 20) 143#define NVGPU_GPU_FLAGS_SUPPORT_IO_COHERENCE (1ULL << 20)
144/* NVGPU_SUBMIT_GPFIFO_FLAGS_RESCHEDULE_RUNLIST is available */ 144/* NVGPU_IOCTL_CHANNEL_RESCHEDULE_RUNLIST is available */
145#define NVGPU_GPU_FLAGS_SUPPORT_RESCHEDULE_RUNLIST (1ULL << 21) 145#define NVGPU_GPU_FLAGS_SUPPORT_RESCHEDULE_RUNLIST (1ULL << 21)
146/* subcontexts are available */ 146/* subcontexts are available */
147#define NVGPU_GPU_FLAGS_SUPPORT_TSG_SUBCONTEXTS (1ULL << 22) 147#define NVGPU_GPU_FLAGS_SUPPORT_TSG_SUBCONTEXTS (1ULL << 22)
@@ -1477,8 +1477,6 @@ struct nvgpu_fence {
1477#define NVGPU_SUBMIT_GPFIFO_FLAGS_SUPPRESS_WFI (1 << 4) 1477#define NVGPU_SUBMIT_GPFIFO_FLAGS_SUPPRESS_WFI (1 << 4)
1478/* skip buffer refcounting during submit */ 1478/* skip buffer refcounting during submit */
1479#define NVGPU_SUBMIT_GPFIFO_FLAGS_SKIP_BUFFER_REFCOUNTING (1 << 5) 1479#define NVGPU_SUBMIT_GPFIFO_FLAGS_SKIP_BUFFER_REFCOUNTING (1 << 5)
1480/* expire current timeslice and reschedule runlist from front */
1481#define NVGPU_SUBMIT_GPFIFO_FLAGS_RESCHEDULE_RUNLIST (1 << 6)
1482 1480
1483struct nvgpu_submit_gpfifo_args { 1481struct nvgpu_submit_gpfifo_args {
1484 __u64 gpfifo; 1482 __u64 gpfifo;
@@ -1659,6 +1657,11 @@ struct nvgpu_get_user_syncpoint_args {
1659 __u32 syncpoint_max; /* out */ 1657 __u32 syncpoint_max; /* out */
1660}; 1658};
1661 1659
1660struct nvgpu_reschedule_runlist_args {
1661#define NVGPU_RESCHEDULE_RUNLIST_PREEMPT_NEXT (1 << 0)
1662 __u32 flags;
1663};
1664
1662#define NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD \ 1665#define NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD \
1663 _IOW(NVGPU_IOCTL_MAGIC, 5, struct nvgpu_set_nvmap_fd_args) 1666 _IOW(NVGPU_IOCTL_MAGIC, 5, struct nvgpu_set_nvmap_fd_args)
1664#define NVGPU_IOCTL_CHANNEL_SET_TIMEOUT \ 1667#define NVGPU_IOCTL_CHANNEL_SET_TIMEOUT \
@@ -1711,9 +1714,11 @@ struct nvgpu_get_user_syncpoint_args {
1711 _IOW(NVGPU_IOCTL_MAGIC, 125, struct nvgpu_timeslice_args) 1714 _IOW(NVGPU_IOCTL_MAGIC, 125, struct nvgpu_timeslice_args)
1712#define NVGPU_IOCTL_CHANNEL_GET_USER_SYNCPOINT \ 1715#define NVGPU_IOCTL_CHANNEL_GET_USER_SYNCPOINT \
1713 _IOR(NVGPU_IOCTL_MAGIC, 126, struct nvgpu_get_user_syncpoint_args) 1716 _IOR(NVGPU_IOCTL_MAGIC, 126, struct nvgpu_get_user_syncpoint_args)
1717#define NVGPU_IOCTL_CHANNEL_RESCHEDULE_RUNLIST \
1718 _IOW(NVGPU_IOCTL_MAGIC, 127, struct nvgpu_reschedule_runlist_args)
1714 1719
1715#define NVGPU_IOCTL_CHANNEL_LAST \ 1720#define NVGPU_IOCTL_CHANNEL_LAST \
1716 _IOC_NR(NVGPU_IOCTL_CHANNEL_GET_USER_SYNCPOINT) 1721 _IOC_NR(NVGPU_IOCTL_CHANNEL_RESCHEDULE_RUNLIST)
1717#define NVGPU_IOCTL_CHANNEL_MAX_ARG_SIZE sizeof(struct nvgpu_alloc_gpfifo_ex_args) 1722#define NVGPU_IOCTL_CHANNEL_MAX_ARG_SIZE sizeof(struct nvgpu_alloc_gpfifo_ex_args)
1718 1723
1719/* 1724/*