iommu/amd: Do not support IOMMUv2 APIs when SNP is enabled
The IOMMUv2 APIs (for supporting shared virtual memory with PASID) configures the domain with IOMMU v2 page table, and sets DTE[Mode]=0. This configuration cannot be supported on SNP-enabled system. Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com> Link: https://lore.kernel.org/r/20220713225651.20758-10-suravee.suthikulpanit@amd.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
8388f7df93
commit
30315e71b4
@ -3458,7 +3458,12 @@ __setup("ivrs_acpihid", parse_ivrs_acpihid);
|
|||||||
|
|
||||||
bool amd_iommu_v2_supported(void)
|
bool amd_iommu_v2_supported(void)
|
||||||
{
|
{
|
||||||
return amd_iommu_v2_present;
|
/*
|
||||||
|
* Since DTE[Mode]=0 is prohibited on SNP-enabled system
|
||||||
|
* (i.e. EFR[SNPSup]=1), IOMMUv2 page table cannot be used without
|
||||||
|
* setting up IOMMUv1 page table.
|
||||||
|
*/
|
||||||
|
return amd_iommu_v2_present && !amd_iommu_snp_en;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(amd_iommu_v2_supported);
|
EXPORT_SYMBOL(amd_iommu_v2_supported);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user