summaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2017-11-16 02:21:19 -0500
committerDeepak Nibade <dnibade@nvidia.com>2017-11-16 02:21:35 -0500
commitba8dc318595f597308902ad16ffed89bdbe7000f (patch)
treee882886e0cbc05ac39473b95ead16ee50bd69c15 /include/uapi
parent69e032653df5aae335764f6346703a1e55c96a2d (diff)
parent77a90d0b8d2eb1bbb207ae5f46b357f2d7cd07ab (diff)
Merge remote-tracking branch 'remotes/origin/dev/linux-nvgpu-t19x' into linux-nvgpu
Bug 200363166 Change-Id: Ic662d7b44b673db28dc0aeba338ae67cf2a43d64 Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/linux/nvgpu-t19x.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/include/uapi/linux/nvgpu-t19x.h b/include/uapi/linux/nvgpu-t19x.h
new file mode 100644
index 00000000..27db97c0
--- /dev/null
+++ b/include/uapi/linux/nvgpu-t19x.h
@@ -0,0 +1,59 @@
1/*
2 * NVGPU Public Interface Header
3 *
4 * Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved.
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License,
8 * version 2, as published by the Free Software Foundation.
9 *
10 * This program is distributed in the hope it will be useful, but WITHOUT
11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
13 * more details.
14 */
15
16/* This file is meant to extend nvgpu.h, not replace it
17 * as such, be sure that nvgpu.h is actually the file performing the
18 * inclusion, to the extent that's possible.
19 */
20#ifndef _UAPI__LINUX_NVGPU_IOCTL_H
21# error "This file is to be included within nvgpu.h only."
22#endif
23
24#ifndef _UAPI__LINUX_NVGPU_T19X_IOCTL_H_
25#define _UAPI__LINUX_NVGPU_T19X_IOCTL_H_
26
27#define NVGPU_GPU_ARCH_GV110 0x00000150
28#define NVGPU_GPU_ARCH_GV100 0x00000140
29#define NVGPU_GPU_IMPL_GV11B 0x0000000B
30#define NVGPU_GPU_IMPL_GV100 0x00000000
31
32/*
33 * this flag is used in struct nvgpu_as_map_buffer_ex_args
34 * to provide L3 cache allocation hint
35 */
36#define NVGPU_AS_MAP_BUFFER_FLAGS_L3_ALLOC (1 << 7)
37
38/* subcontexts are available */
39#define NVGPU_GPU_FLAGS_SUPPORT_TSG_SUBCONTEXTS (1ULL << 22)
40
41struct nvgpu_tsg_bind_channel_ex_args {
42 /* in: channel fd */
43 __s32 channel_fd;
44
45 /* in: VEID in Volta */
46 __u32 subcontext_id;
47 __u32 num_active_tpcs;
48 __u8 tpc_pg_enabled;
49 __u8 reserved[11];
50};
51
52#define NVGPU_TSG_IOCTL_BIND_CHANNEL_EX \
53 _IOWR(NVGPU_TSG_IOCTL_MAGIC, 11, struct nvgpu_tsg_bind_channel_ex_args)
54
55#define NVGPU_TSG_IOCTL_MAX NVGPU_TSG_IOCTL_BIND_CHANNEL_EX
56
57#define NVGPU_TSG_IOCTL_MAX_ARG sizeof(struct nvgpu_tsg_bind_channel_ex_args)
58
59#endif /* _UAPI__LINUX_NVGPU_T19X_IOCTL_H_ */