[PATCH] drm/amdgpu: fix handling of irq domains on soc15 and newer GPUs
Christian König
ckoenig.leichtzumerken at gmail.com
Fri Dec 18 17:23:13 UTC 2020
Am 18.12.20 um 17:53 schrieb Alex Deucher:
> We need to take into account the client id otherwise we'll end
> up sending generic events for any src id that is registered.
>
> We only support irq domains on pre-soc15 parts so client is
> always legacy.
I've seen that multiple times as well but always forgot to ask if that's
right or wrong.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
> index bea57e8e793f..afbbec82a289 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
> @@ -444,7 +444,8 @@ void amdgpu_irq_dispatch(struct amdgpu_device *adev,
> } else if (src_id >= AMDGPU_MAX_IRQ_SRC_ID) {
> DRM_DEBUG("Invalid src_id in IV: %d\n", src_id);
>
> - } else if (adev->irq.virq[src_id]) {
> + } else if ((client_id == AMDGPU_IRQ_CLIENTID_LEGACY) &&
> + adev->irq.virq[src_id]) {
> generic_handle_irq(irq_find_mapping(adev->irq.domain, src_id));
>
> } else if (!adev->irq.client[client_id].sources) {
More information about the amd-gfx
mailing list