UMD need this bit if preemption want supported Change-Id: Ic657b3e6f46a148ed3cf0e932ccf46f2c5230d7f Signed-off-by: Monk Liu <Monk.Liu at amd.com> Conflicts: drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c --- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 8 ++++++++ include/uapi/drm/amdgpu_drm.h | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c index 58a0b59..85b4c5f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c @@ -540,6 +540,14 @@ static int amdgpu_info_ioctl(struct drm_device *dev, void *data, struct drm_file return copy_to_user(out, &vce_clk_table, min((size_t)size, sizeof(vce_clk_table))) ? -EFAULT : 0; } + + case AMDGPU_INFO_PREEMPTION: { + if (amdgpu_sriov_vf(adev)) + ui32 |= AMDGPU_INFO_PREEMPTION_ENALBED; + return copy_to_user(out, &ui32, min(size, 4u)) ? -EFAULT: 0; + break; + } + default: DRM_DEBUG_KMS("Invalid request %d\n", info->query); return -EINVAL; diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h index 667e9bc..2f25c50 100644 --- a/include/uapi/drm/amdgpu_drm.h +++ b/include/uapi/drm/amdgpu_drm.h @@ -501,6 +501,10 @@ struct drm_amdgpu_cs_chunk_data { #define AMDGPU_INFO_MMR_SH_INDEX_SHIFT 8 #define AMDGPU_INFO_MMR_SH_INDEX_MASK 0xff +/* Query info about preemption */ +#define AMDGPU_INFO_PREEMPTION 0x1B + #define AMDGPU_INFO_PREEMPTION_ENALBED 1 + struct drm_amdgpu_query_fw { /** AMDGPU_INFO_FW_* */ __u32 fw_type; -- 1.9.1