[PATCH 1/5] drm/xe/guc: Add VF_CFG_SCHED_PRIORITY_KEY KLV definition

Laguna, Lukasz lukasz.laguna at intel.com
Mon Oct 28 15:34:18 UTC 2024


On 10/24/2024 01:11, Michal Wajdeczko wrote:
> This KLV allows to set the scheduling priority for each VF, also
> for the PF.
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> ---
>   drivers/gpu/drm/xe/abi/guc_klvs_abi.h | 13 +++++++++++++
>   1 file changed, 13 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/abi/guc_klvs_abi.h b/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> index 37606cf8cc5e..674f1afe38c8 100644
> --- a/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> +++ b/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> @@ -291,6 +291,13 @@ enum  {
>    *
>    *      :0: (default)
>    *      :1-65535: number of contexts (Gen12)
> + *
> + * _`GUC_KLV_VF_CFG_SCHED_PRIORITY` : 0x8A0C
> + *      This config controls VF’s scheduling priority.
> + *
> + *      :0: LOW = schedule VF only if it has active work (default)
> + *      :1: NORMAL = schedule VF always, irrespective of whether it has work or not
> + *      :2: HIGH = schedule VF in the next time-slice after current active time-slice completes

Maybe worth to add that VF is scheduled only if it has work?

>    */
>   
>   #define GUC_KLV_VF_CFG_GGTT_START_KEY		0x0001
> @@ -343,6 +350,12 @@ enum  {
>   #define GUC_KLV_VF_CFG_BEGIN_CONTEXT_ID_KEY	0x8a0b
>   #define GUC_KLV_VF_CFG_BEGIN_CONTEXT_ID_LEN	1u
>   
> +#define GUC_KLV_VF_CFG_SCHED_PRIORITY_KEY	0x8a0c
> +#define GUC_KLV_VF_CFG_SCHED_PRIORITY_LEN	1u
> +#define   GUC_SCHED_PRIORITY_LOW		0u
> +#define   GUC_SCHED_PRIORITY_NORMAL		1u
> +#define   GUC_SCHED_PRIORITY_HIGH		2u
> +
>   /*
>    * Workaround keys:
>    */


More information about the Intel-xe mailing list