[PATCH] drm/amdgpu:set preemption flag bit

Christian König deathsimple at vodafone.de
Fri Oct 21 09:59:37 UTC 2016


Way to much overkill, just put that into the device info flags.

See AMDGPU_IDS_FLAGS_FUSION for reference.

Christian.

Am 21.10.2016 um 05:34 schrieb Monk Liu:
> 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;




More information about the amd-gfx mailing list