mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-23 18:16:01 +03:00
Add a translation layer to convert from the NVGPU_AS_* flags to to new set of NVGPU_VM_MAP_* and NVGPU_VM_AREA_ALLOC_* flags. This allows the common MM code to not depend on the UAPI header defined for Linux. In addition to this change a couple of other small changes were made: 1. Deprecate, print a warning, and ignore usage of the NVGPU_AS_MAP_BUFFER_FLAGS_MAPPABLE_COMPBITS flag. 2. Move the t19x IO coherence flag from the t19x UAPI header to the regular UAPI header. JIRA NVGPU-293 Change-Id: I146402b0e8617294374e63e78f8826c57cd3b291 Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1599802 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
54 lines
1.7 KiB
C
54 lines
1.7 KiB
C
/*
|
|
* NVGPU Public Interface Header
|
|
*
|
|
* Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms and conditions of the GNU General Public License,
|
|
* version 2, as published by the Free Software Foundation.
|
|
*
|
|
* This program is distributed in the hope it will be useful, but WITHOUT
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
* more details.
|
|
*/
|
|
|
|
/* This file is meant to extend nvgpu.h, not replace it
|
|
* as such, be sure that nvgpu.h is actually the file performing the
|
|
* inclusion, to the extent that's possible.
|
|
*/
|
|
#ifndef _UAPI__LINUX_NVGPU_IOCTL_H
|
|
# error "This file is to be included within nvgpu.h only."
|
|
#endif
|
|
|
|
#ifndef _UAPI__LINUX_NVGPU_T19X_IOCTL_H_
|
|
#define _UAPI__LINUX_NVGPU_T19X_IOCTL_H_
|
|
|
|
#define NVGPU_GPU_ARCH_GV110 0x00000150
|
|
#define NVGPU_GPU_ARCH_GV100 0x00000140
|
|
#define NVGPU_GPU_IMPL_GV11B 0x0000000B
|
|
#define NVGPU_GPU_IMPL_GV100 0x00000000
|
|
|
|
/* subcontexts are available */
|
|
#define NVGPU_GPU_FLAGS_SUPPORT_TSG_SUBCONTEXTS (1ULL << 22)
|
|
|
|
struct nvgpu_tsg_bind_channel_ex_args {
|
|
/* in: channel fd */
|
|
__s32 channel_fd;
|
|
|
|
/* in: VEID in Volta */
|
|
__u32 subcontext_id;
|
|
__u32 num_active_tpcs;
|
|
__u8 tpc_pg_enabled;
|
|
__u8 reserved[11];
|
|
};
|
|
|
|
#define NVGPU_TSG_IOCTL_BIND_CHANNEL_EX \
|
|
_IOWR(NVGPU_TSG_IOCTL_MAGIC, 11, struct nvgpu_tsg_bind_channel_ex_args)
|
|
|
|
#define NVGPU_TSG_IOCTL_MAX NVGPU_TSG_IOCTL_BIND_CHANNEL_EX
|
|
|
|
#define NVGPU_TSG_IOCTL_MAX_ARG sizeof(struct nvgpu_tsg_bind_channel_ex_args)
|
|
|
|
#endif /* _UAPI__LINUX_NVGPU_T19X_IOCTL_H_ */
|