| # SPDX-License-Identifier: GPL-2.0-only |
| # AMD IOMMU support |
| config AMD_IOMMU |
| bool "AMD IOMMU support" |
| select SWIOTLB |
| select PCI_MSI |
| select PCI_ATS |
| select PCI_PRI |
| select PCI_PASID |
| select MMU_NOTIFIER |
| select IOMMU_API |
| select IOMMU_IOVA |
| select IOMMU_IO_PGTABLE |
| select IOMMU_SVA |
| select IOMMU_IOPF |
| select IOMMUFD_DRIVER if IOMMUFD |
| depends on X86_64 && PCI && ACPI && HAVE_CMPXCHG_DOUBLE |
| help |
| With this option you can enable support for AMD IOMMU hardware in |
| your system. An IOMMU is a hardware component which provides |
| remapping of DMA memory accesses from devices. With an AMD IOMMU you |
| can isolate the DMA memory of different devices and protect the |
| system from misbehaving device drivers or hardware. |
| |
| You can find out if your system has an AMD IOMMU if you look into |
| your BIOS for an option to enable it or if you have an IVRS ACPI |
| table. |
| |
| config AMD_IOMMU_DEBUGFS |
| bool "Enable AMD IOMMU internals in DebugFS" |
| depends on AMD_IOMMU && IOMMU_DEBUGFS |
| help |
| !!!WARNING!!! !!!WARNING!!! !!!WARNING!!! !!!WARNING!!! |
| |
| DO NOT ENABLE THIS OPTION UNLESS YOU REALLY, -REALLY- KNOW WHAT YOU ARE DOING!!! |
| Exposes AMD IOMMU device internals in DebugFS. |
| |
| This option is -NOT- intended for production environments, and should |
| not generally be enabled. |