[PATCH v10 0/8] More missing XeLP workarounds

Lucas De Marchi lucas.demarchi at intel.com
Fri Jul 25 16:48:51 UTC 2025


On Mon, Jul 14, 2025 at 10:27:54AM -0500, Lucas De Marchi wrote:
>On Fri, Jul 11, 2025 at 05:01:45PM +0100, Tvrtko Ursulin wrote:
>>Some more missing XeLP workarounds. This time including some which need to go
>>into indirect context, which also means some plumbing had to be added.
>>
>>Includes a fix to use iosys helpers for existing wa bb emission since there is a
>>code dependency on it.
>>
>>v2:
>>* Use iosys helpers.
>>* Split indirect context plumbing as a separate patch.
>>* Tweak where and how Wa_16010904313 is emitted.
>>* Move Wa_18022495364 into the wa_bb.
>>
>>v3:
>>* Rewrite on top of Lucas' wa bb changes - use same infrastructure.
>>
>>v4:
>>* Rework due 3a1edef8f4b5 ("drm/xe: Make WA BB part of LRC BO").
>>
>>v5:
>>* Fix indirect ring state offset calculation.
>>* Removed extra space in one patch.
>>
>>v6:
>>* Fixed indirect ctx MI_NOOP padding to 64B cacheline.
>>* Do not add negative errors codes to reported emitted counts.
>>* Renamed workaround emission functions. (Lucas)
>>
>>v7:
>>* Rebase for removal of bo->size.
>>
>>v8:
>>* Rename bo emission helpers. (Lucas)
>>* Drop XELP prefix from LRC layout define. (Lucas)
>>* Drop first patch from the series as it was merged.
>>
>>v9:
>>* Contain emission helpers arguments in a struct. (Lucas)
>>* Use REG_FIELD_PREP for CTX_INDIRECT_CTX_OFFSET_DEFAULT. (Lucas)
>>* Coding style tweaks. (Lucas)
>>* Improved comment. (Lucas)
>>* Split indirect ctx bo size defined from maximum hw supported size.
>>
>>v10:
>>* Tweak code formatting in last two patches.
>>* Drop LRC_INDIRECT_CTX_SIZE. (Lucas)
>>* Use reserve_dw = 0 for the indirect ctx. (Lucas)
>>
>>Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>>Cc: Matt Roper <matthew.d.roper at intel.com>
>>
>>Tvrtko Ursulin (8):
>> drm/xe: Generalize wa bb emission code
>> drm/xe: Pass wa bb setup arguments in a struct
>
>there were a few checkpatch warnings in this that I fixed up:
>
>	-:34: WARNING:SPACE_BEFORE_TAB: please, no space before tabs
>	#34: FILE: drivers/gpu/drm/xe/xe_lrc.c:982:
>	+^Istruct xe_lrc ^I^I*lrc;$
>
>	-:37: WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned'
>	#37: FILE: drivers/gpu/drm/xe/xe_lrc.c:985:
>	+       unsigned                offset;
>
>	-:39: WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned'
>	#39: FILE: drivers/gpu/drm/xe/xe_lrc.c:987:
>	+       unsigned                num_funcs;
>
>
>
>> drm/xe: Rename utilization workaround emission function
>> drm/xe: Track number of written dwords from workaround batch buffer
>>   emission
>> drm/xe: Allow specifying number of extra dwords at the end of wa bb
>>   emission
>> drm/xe: Add plumbing for indirect context workarounds
>
>and in this one:
>
>s/CTX_INDIRECT_OFFSET_MASK/CTX_INDIRECT_CTX_OFFSET_MASK/
>
>I don't like the repeated CTX, but if we are using it in the other
>define, we should use it here too.
>
>Pushed the patches 1-7 to drm-xe-next. I'm still waiting to hear from
>hw/validation about the WA. I expect to get this applied next week.

I actually applied patches 1-6 at that time. And now I just pushed
patches 7 and 8.

thanks
Lucas De Marchi


More information about the Intel-xe mailing list