[PATCH 1/2] drm/xe/pf: Add thresholds to the VF KLV config

Piotr Piórkowski piotr.piorkowski at intel.com
Mon Sep 2 09:36:26 UTC 2024


Michal Wajdeczko <michal.wajdeczko at intel.com> wrote on pią [2024-sie-30 15:20:59 +0200]:
> We are pushing threshold KLV to the GuC immediately during the
> threshold provisioning, but those configs will be lost during a
> GT reset.  Include threshold KLVs while encoding full VF config
> buffer to make sure the GuC receives all of the config KLVs.
> 
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> index 497af3949b19..151eb69ab4ae 100644
> --- a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> +++ b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> @@ -277,6 +277,14 @@ static u32 encode_config(u32 *cfg, const struct xe_gt_sriov_config *config)
>  	cfg[n++] = PREP_GUC_KLV_TAG(VF_CFG_PREEMPT_TIMEOUT);
>  	cfg[n++] = config->preempt_timeout;
>  
> +#define encode_threshold_config(TAG, ...) ({					\
> +	cfg[n++] = PREP_GUC_KLV_TAG(VF_CFG_THRESHOLD_##TAG);			\
> +	cfg[n++] = config->thresholds[MAKE_XE_GUC_KLV_THRESHOLD_INDEX(TAG)];	\
> +});
> +
> +	MAKE_XE_GUC_KLV_THRESHOLDS_SET(encode_threshold_config);
> +#undef encode_threshold_config
> +
>  	return n;
>  }

LGTM:
Reviewed-by: Piotr Piórkowski <piotr.piorkowski at intel.com>

>  
> -- 
> 2.43.0
> 

-- 


More information about the Intel-xe mailing list