[PATCH v3 04/13] drm/xe/psmi: Add Wa_14020001231
Riana Tauro
riana.tauro at intel.com
Wed Aug 13 17:44:57 UTC 2025
On 8/8/2025 10:59 PM, Lucas De Marchi wrote:
> From: Badal Nilawar <badal.nilawar at intel.com>
>
> Enable Wa 14020001231 to block psmi interrupts during C6 entry exit
> flow. It's only enabled if PSMI is enabled in runtime.
>
> Signed-off-by: Badal Nilawar <badal.nilawar at intel.com>
> Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
> ---
> v2:
> - Enable only when PSMI is enabled
> ---
> drivers/gpu/drm/xe/abi/guc_klvs_abi.h | 1 +
> drivers/gpu/drm/xe/xe_guc_ads.c | 4 ++++
> drivers/gpu/drm/xe/xe_wa_oob.rules | 4 ++++
> 3 files changed, 9 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/abi/guc_klvs_abi.h b/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> index 31dbfeee289e7..0e78351c6ef5a 100644
> --- a/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> +++ b/drivers/gpu/drm/xe/abi/guc_klvs_abi.h
> @@ -390,6 +390,7 @@ enum {
> */
> enum xe_guc_klv_ids {
> GUC_WORKAROUND_KLV_BLOCK_INTERRUPTS_WHEN_MGSR_BLOCKED = 0x9002,
> + GUC_WORKAROUND_KLV_DISABLE_PSMI_INTERRUPTS_AT_C6_ENTRY_RESTORE_AT_EXIT = 0x9004,
> GUC_WORKAROUND_KLV_ID_GAM_PFQ_SHADOW_TAIL_POLLING = 0x9005,
> GUC_WORKAROUND_KLV_ID_DISABLE_MTP_DURING_ASYNC_COMPUTE = 0x9007,
> GUC_WA_KLV_NP_RD_WRITE_TO_CLEAR_RCSM_AT_CGP_LATE_RESTORE = 0x9008,
> diff --git a/drivers/gpu/drm/xe/xe_guc_ads.c b/drivers/gpu/drm/xe/xe_guc_ads.c
> index 2ceaa197cb2f0..c42fc78798ca0 100644
> --- a/drivers/gpu/drm/xe/xe_guc_ads.c
> +++ b/drivers/gpu/drm/xe/xe_guc_ads.c
> @@ -359,6 +359,10 @@ static void guc_waklv_init(struct xe_guc_ads *ads)
> GUC_WA_KLV_RESTORE_UNSAVED_MEDIA_CONTROL_REG);
> }
>
> + if (XE_WA(gt, 14020001231))
This commit has changed XE_WA to XE_GT_WA. Both WA patches need this change
4d5c98eb77fe ("drm/xe: rename XE_WA to XE_GT_WA")
Thanks
Riana
> + guc_waklv_enable(ads, NULL, 0, &offset, &remain,
> + GUC_WORKAROUND_KLV_DISABLE_PSMI_INTERRUPTS_AT_C6_ENTRY_RESTORE_AT_EXIT);
> +
> size = guc_ads_waklv_size(ads) - remain;
> if (!size)
> return;
> diff --git a/drivers/gpu/drm/xe/xe_wa_oob.rules b/drivers/gpu/drm/xe/xe_wa_oob.rules
> index 8d0aabab67773..303a5e05d9932 100644
> --- a/drivers/gpu/drm/xe/xe_wa_oob.rules
> +++ b/drivers/gpu/drm/xe/xe_wa_oob.rules
> @@ -68,6 +68,10 @@ no_media_l3 MEDIA_VERSION(3000)
> MEDIA_VERSION_RANGE(1300, 3000)
> MEDIA_VERSION(3002)
> GRAPHICS_VERSION(3003)
> +14020001231 GRAPHICS_VERSION_RANGE(2001,2004), FUNC(xe_rtp_match_psmi_enabled)
> + MEDIA_VERSION(2000), FUNC(xe_rtp_match_psmi_enabled)
> + MEDIA_VERSION(3000), FUNC(xe_rtp_match_psmi_enabled)
> + MEDIA_VERSION(3002), FUNC(xe_rtp_match_psmi_enabled)
>
> # SoC workaround - currently applies to all platforms with the following
> # primary GT GMDID
>
More information about the Intel-xe
mailing list