RE: [PATCH 0/2] iommu/amd: Fix IOMMUv2 devices when SME is active

From: Deucher, Alexander
Date: Fri Aug 28 2020 - 11:11:43 EST


[AMD Public Use]

> -----Original Message-----
> From: Kuehling, Felix <Felix.Kuehling@xxxxxxx>
> Sent: Friday, August 28, 2020 9:55 AM
> To: jroedel@xxxxxxx; Deucher, Alexander <Alexander.Deucher@xxxxxxx>
> Cc: Joerg Roedel <joro@xxxxxxxxxx>; iommu@xxxxxxxxxxxxxxxxxxxxxxxxxx;
> Huang, Ray <Ray.Huang@xxxxxxx>; Koenig, Christian
> <Christian.Koenig@xxxxxxx>; Lendacky, Thomas
> <Thomas.Lendacky@xxxxxxx>; Suthikulpanit, Suravee
> <Suravee.Suthikulpanit@xxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 0/2] iommu/amd: Fix IOMMUv2 devices when SME is
> active
>
> Am 2020-08-28 um 9:46 a.m. schrieb jroedel@xxxxxxx:
> > On Wed, Aug 26, 2020 at 03:25:58PM +0000, Deucher, Alexander wrote:
> >>> Alex, do you know if anyone has tested amdgpu on an APU with SME
> >>> enabled? Is this considered something we support?
> >> It's not something we've tested. I'm not even sure the GPU portion
> >> of APUs will work properly without an identity mapping. SME should
> >> work properly with dGPUs however, so this is a proper fix for them.
> >> We don't use the IOMMUv2 path on dGPUs at all.
> > Is it possible to make the IOMMUv2 paths optional on iGPUs as well
> > when SME is active (or better, when the GPU is not identity mapped)?
>
> Yes, we're working on this. IOMMUv2 is only needed for KFD. It's not needed
> for graphics. And we're making it optional for KFD as well.
>
> The question Alex and I raised here is more general. We may have some
> assumptions in the amdgpu driver that are broken when the framebuffer is
> not identity mapped. This would break the iGPU in a more general sense,
> regardless of KFD and IOMMUv2. In that case, we don't really need to worry
> about breaking KFD because we have a much bigger problem.

There are hw bugs on Raven and probably Carrizo/Stoney where they need 1:1 mapping to avoid bugs in some corner cases with the displays. Other GPUs should be fine. The VIDs is 0x1002 and the DIDs are 0x15dd and 0x15d8 for raven variants and 0x9870, 0x9874, 0x9875, 0x9876, 0x9877 and 0x98e4 for carrizo and stoney. As long as we preserve the 1:1 mapping for those asics, we should be fine.

Alex

>
> Regards,
>   Felix
>
>
> >
> > Regards,
> >
> > Joerg