[PATCH] drm/xe/xe2lpg: Extend Wa_14020338487

Chauhan, Shekhar shekhar.chauhan at intel.com
Thu Apr 18 05:09:44 UTC 2024


On 4/18/2024 10:30, Lucas De Marchi wrote:
> On Thu, Apr 18, 2024 at 10:20:35AM GMT, Chauhan, Shekhar wrote:
>>
>> On 4/18/2024 04:05, Lucas De Marchi wrote:
>>> On Wed, Apr 17, 2024 at 06:45:47PM GMT, Gustavo Sousa wrote:
>>>> Quoting Gustavo Sousa (2024-04-17 18:25:01-03:00)
>>>>> Wa_14020338487 also applies to Xe2_LPG. Replicate the existing 
>>>>> entry to
>>>>> one specific for Xe2_LPG.
>>>>
>>>> I would also like to take this as an opportunity to discuss the way we
>>>> are currently arranging the RTP entries for the workaround. Using this
>>>> one as example, created a copy of the entry and edited the argument of
>>>> GRAPHICS_VERSION() to match Xe2_LPG. There are multiple cases already
>>>> following the same pattern, mainly because we are grouping entries by
>>>> IP release.
>>>>
>>>> Do we want to continue following that pattern and keep the code
>>>> duplication? Or should we think of a way to avoid code duplication 
>>>> here?
>>>>
>>>> A very simple approach that I think of is having a single entry for 
>>>> each
>>>> lineage. But I guess that's not really feasible today because I 
>>>> guess we
>>>> do not have a way of expressing logical disjunction in XE_RTP_RULES().
>>>
>>> yes, implementing it was always something I considered, but then there
>>> was also the fact that when we have WAs that are on IPs that are not
>>> close to each other we may have subtle differences like registers with
>>> different offset or mcr vs non-mcr.
>>
>> I see that some registers vary between MCR and non-MCR types. 
>> However, could you please explain how this difference affects 
>> implementation? As I understand it, when setting XE_RTP_ACTIONS, we 
>> simply choose the desired action (SET, CLR etc). So, I'm curious 
>> about the specific impact of MCR vs non-MCR in this context.
>
> you need to pick the right register that has the mcr reg option set.
> Exammple:
>
>         { XE_RTP_NAME("22016670082"),
>           XE_RTP_RULES(GRAPHICS_VERSION_RANGE(1270, 1274)),
>           XE_RTP_ACTIONS(SET(SQCNT1, ENFORCE_RAR))
>         },
>
> vs
>
>         { XE_RTP_NAME("22016670082"),
>           XE_RTP_RULES(MEDIA_VERSION(1300)),
>           XE_RTP_ACTIONS(SET(XELPMP_SQCNT1, ENFORCE_RAR))
>         },
>
> #define SQCNT1 XE_REG_MCR(0x8718)
> #define XELPMP_SQCNT1                              XE_REG(0x8718)
>
>
Understood. Thanks.

/shekhar
/

>
> Lucas De Marchi

-- 
-shekhar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-xe/attachments/20240418/15172f66/attachment.htm>


More information about the Intel-xe mailing list