Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d7f07769 authored by Joerg Roedel's avatar Joerg Roedel
Browse files

x86/amd-iommu: Fall back to GART if initialization fails



This patch implements a fallback to the GART IOMMU if this
is possible and the AMD IOMMU initialization failed.
Otherwise the fallback would be nommu which is very
problematic on machines with more than 4GB of memory or
swiotlb which hurts io-performance.

Cc: stable@kernel.org
Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
parent e82752d8
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -2330,10 +2330,6 @@ int __init amd_iommu_init_dma_ops(void)

	iommu_detected = 1;
	swiotlb = 0;
#ifdef CONFIG_GART_IOMMU
	gart_iommu_aperture_disabled = 1;
	gart_iommu_aperture = 0;
#endif

	/* Make the driver finally visible to the drivers */
	dma_ops = &amd_iommu_dma_ops;
+9 −0
Original line number Diff line number Diff line
@@ -1358,6 +1358,15 @@ static int __init amd_iommu_init(void)

	free_unity_maps();

#ifdef CONFIG_GART_IOMMU
	/*
	 * We failed to initialize the AMD IOMMU - try fallback to GART
	 * if possible.
	 */
	gart_iommu_init();

#endif

	goto out;
}