xref: /linux/drivers/iommu/amd/Kconfig (revision 7d8b06ecc45bd679dec58d2cc2bd86223d4e076d)
1# SPDX-License-Identifier: GPL-2.0-only
2# AMD IOMMU support
3config AMD_IOMMU
4	bool "AMD IOMMU support"
5	select SWIOTLB
6	select PCI_MSI
7	select PCI_ATS
8	select PCI_PRI
9	select PCI_PASID
10	select IRQ_MSI_LIB
11	select MMU_NOTIFIER
12	select IOMMU_API
13	select IOMMU_IOVA
14	select IOMMU_SVA
15	select IOMMU_IOPF
16	select IOMMUFD_DRIVER if IOMMUFD
17	select GENERIC_PT
18	select IOMMU_PT
19	select IOMMU_PT_AMDV1
20	select IOMMU_PT_X86_64
21	depends on X86_64 && PCI && ACPI && HAVE_CMPXCHG_DOUBLE
22	help
23	  With this option you can enable support for AMD IOMMU hardware in
24	  your system. An IOMMU is a hardware component which provides
25	  remapping of DMA memory accesses from devices. With an AMD IOMMU you
26	  can isolate the DMA memory of different devices and protect the
27	  system from misbehaving device drivers or hardware.
28
29	  You can find out if your system has an AMD IOMMU if you look into
30	  your BIOS for an option to enable it or if you have an IVRS ACPI
31	  table.
32
33config AMD_IOMMU_IOMMUFD
34	bool "Enable IOMMUFD features for AMD IOMMU (EXPERIMENTAL)"
35	depends on IOMMUFD
36	depends on AMD_IOMMU
37	help
38	  Support for IOMMUFD features intended to support virtual machines
39	  with accelerated virtual IOMMUs.
40
41	  Say Y here if you are doing development and testing on this feature.
42
43config AMD_IOMMU_DEBUGFS
44	bool "Enable AMD IOMMU internals in DebugFS"
45	depends on AMD_IOMMU && IOMMU_DEBUGFS
46	help
47	  !!!WARNING!!!  !!!WARNING!!!  !!!WARNING!!!  !!!WARNING!!!
48
49	  DO NOT ENABLE THIS OPTION UNLESS YOU REALLY, -REALLY- KNOW WHAT YOU ARE DOING!!!
50	  Exposes AMD IOMMU device internals in DebugFS.
51
52	  This option is -NOT- intended for production environments, and should
53	  not generally be enabled.
54