On 7/2/26 13:53, Timur Kristóf wrote:
> On 2026. július 2., csütörtök 12:38:12 közép-európai nyári idő Christian 
> König 
> wrote:
>> On 7/1/26 18:17, Timur Kristóf wrote:
>>> The retry CAM can filter interrupts which occur repeatedly,
>>> such as page fault interrupts when retry faults are enabled.
>>> This makes processing those interrupts much more efficient,
>>> because the CPU won't have to deal with processing the same
>>> interrupt repeatedly.
>>>
>>> Signed-off-by: Timur Kristóf <[email protected]>
>>> ---
>>>
>>>  drivers/gpu/drm/amd/amdgpu/ih_v7_0.c | 3 ++-
>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/ih_v7_0.c
>>> b/drivers/gpu/drm/amd/amdgpu/ih_v7_0.c index 291326d2ee8b..ec0919fa8254
>>> 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/ih_v7_0.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/ih_v7_0.c
>>> @@ -390,7 +390,8 @@ static int ih_v7_0_irq_init(struct amdgpu_device
>>> *adev)
>>>
>>>     pci_set_master(adev->pdev);
>>>
>>> -   if (amdgpu_ip_version(adev, OSSSYS_HWIP, 0) == IP_VERSION(7, 1, 
> 0)) {
>>> +   if (amdgpu_ip_version(adev, OSSSYS_HWIP, 0) == IP_VERSION(7, 1, 0) 
> ||
>>> +       !(adev->flags & AMD_IS_APU)) {
>>
>> I think the check should be the other way around.
>>
>> In other words we can enable the cam on dGPU or APUs with IP version 7.1
>> because that one has the CAM as well.
> 
> What do you mean by the other way around?
> 
> The patch keeps pre-existing behaviour on IH 7.1 and additionally enables the 
> retry CAM on dGPUs. The patch makes no functional changes to IH 7.1, on that 
> version the retry CAM is always enabled regardless of whether it's an APU or 
> dGPU.

I just wanted to make the logic more readable. In other words:

if (!(adev->flags & AMD_IS_APU) ||
    amdgpu_ip_version(adev, OSSSYS_HWIP, 0) == IP_VERSION(7, 1, 0))
...

I still need to double check why we have the exception for OSSSYS 7.1.

Could be that this is for some MI* product, but I'm not 100% sure yet.

Regards,
Christian.

> 
>>
>>>             /* Enable IH Retry CAM */
>>>             tmp = RREG32_SOC15(OSSSYS, 0, 
> regIH_RETRY_INT_CAM_CNTL);
>>>             tmp = REG_SET_FIELD(tmp, IH_RETRY_INT_CAM_CNTL, ENABLE, 
> 1);
> 
> 
> 
> 

Reply via email to