2022-09-01 18:58:11

by Steven J Abner

[permalink] [raw]
Subject: amd iommu configuration

Hi
Building a kernel tailored for AMD 2400g on ASRock B450 using 5.18.12
as base.
I stumbled across an odd situation and which lacked Kconfig info and
lead to oddity.
/drivers/iommu/amd/Kconfig states 'config AMD_IOMMU_V2' is 'tristate'
but unlike many
other tristate configures doesn't mention that module name is
'iommu_v2.ko' and loading should be done by adding to modules-load.d.

The oddity is that by loading as module is as follows (differences):

builtin iommu_v2 version dmesg:
amdgpu: HMM registered 2048MB device memory
amdgpu: Topology: Add APU node [0x0:0x0]
amdgpu: Topology: Add APU node [0x15dd:0x1002]
AMD-Vi: AMD IOMMUv2 loaded and initialized
kfd kfd: amdgpu: added device 1002:15dd
kfd kfd: amdgpu: Allocated 3969056 bytes on gart
memmap_init_zone_device initialised 524288 pages in 0ms

module not loaded due to missing iommu.conf dmesg:
amdgpu: CRAT table disabled by module option
amdgpu: Topology: Add CPU node
amdgpu: Virtual CRAT table created for CPU
kfd kfd: amdgpu: GC IP 090100 not supported in kfd

module load through iommu.conf dmesg:
amdgpu: CRAT table disabled by module option
amdgpu: Topology: Add CPU node
amdgpu: Virtual CRAT table created for CPU
AMD-Vi: AMD IOMMUv2 loaded and initialized
kfd kfd: amdgpu: GC IP 090100 not supported in kfd

Note, only difference on witk/without iommu.conf is:
AMD-Vi: AMD IOMMUv2 loaded and initialized

So does this mean missing features by not having builtin?
If not, should Kconfig have hint about module and loading?

Steve

I wish to be personally CC'ed the answers/comments posted to the list
in response to my posting, please:) Not a list member.





2022-09-02 22:17:13

by Randy Dunlap

[permalink] [raw]
Subject: Re: amd iommu configuration



On 9/1/22 11:36, Steven J Abner wrote:
> Hi
> Building a kernel tailored for AMD 2400g on ASRock B450 using 5.18.12 as base.
> I stumbled across an odd situation and which lacked Kconfig info and lead to oddity.
> /drivers/iommu/amd/Kconfig states 'config AMD_IOMMU_V2' is 'tristate' but unlike many
> other tristate configures doesn't mention that module name is 'iommu_v2.ko' and loading should be done by adding to modules-load.d.
>
> The oddity is that by loading as module is as follows (differences):
>
> builtin iommu_v2 version dmesg:
> amdgpu: HMM registered 2048MB device memory
> amdgpu: Topology: Add APU node [0x0:0x0]
> amdgpu: Topology: Add APU node [0x15dd:0x1002]
> AMD-Vi: AMD IOMMUv2 loaded and initialized
> kfd kfd: amdgpu: added device 1002:15dd
> kfd kfd: amdgpu: Allocated 3969056 bytes on gart
> memmap_init_zone_device initialised 524288 pages in 0ms
>
> module not loaded due to missing iommu.conf dmesg:
> amdgpu: CRAT table disabled by module option
> amdgpu: Topology: Add CPU node
> amdgpu: Virtual CRAT table created for CPU
> kfd kfd: amdgpu: GC IP 090100 not supported in kfd
>
> module load through iommu.conf dmesg:
> amdgpu: CRAT table disabled by module option
> amdgpu: Topology: Add CPU node
> amdgpu: Virtual CRAT table created for CPU
> AMD-Vi: AMD IOMMUv2 loaded and initialized
> kfd kfd: amdgpu: GC IP 090100 not supported in kfd
>
> Note, only difference on witk/without iommu.conf is:
> AMD-Vi: AMD IOMMUv2 loaded and initialized
>
> So does this mean missing features by not having builtin?
> If not, should Kconfig have hint about module and loading?
>
> Steve
>
> I wish to be personally CC'ed the answers/comments posted to the list
> in response to my posting, please:) Not a list member.

Hi,
Please try these email addresses:

AMD IOMMU (AMD-VI)
M: Joerg Roedel <[email protected]>
R: Suravee Suthikulpanit <[email protected]>
L: [email protected]

Thanks.

--
~Randy