x86: amd_iommu: move to drivers/iommu/
This should ease finding similarities with different platforms, with the intention of solving problems once in a generic framework which everyone can use. Compile-tested on x86_64. Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
This commit is contained in:
Родитель
b10f127e1a
Коммит
29b68415e3
|
@ -680,34 +680,6 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT
|
||||||
Calgary anyway, pass 'iommu=calgary' on the kernel command line.
|
Calgary anyway, pass 'iommu=calgary' on the kernel command line.
|
||||||
If unsure, say Y.
|
If unsure, say Y.
|
||||||
|
|
||||||
config AMD_IOMMU
|
|
||||||
bool "AMD IOMMU support"
|
|
||||||
select SWIOTLB
|
|
||||||
select PCI_MSI
|
|
||||||
select PCI_IOV
|
|
||||||
select IOMMU_API
|
|
||||||
depends on X86_64 && PCI && ACPI
|
|
||||||
---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 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_STATS
|
|
||||||
bool "Export AMD IOMMU statistics to debugfs"
|
|
||||||
depends on AMD_IOMMU
|
|
||||||
select DEBUG_FS
|
|
||||||
---help---
|
|
||||||
This option enables code in the AMD IOMMU driver to collect various
|
|
||||||
statistics about whats happening in the driver and exports that
|
|
||||||
information to userspace via debugfs.
|
|
||||||
If unsure, say N.
|
|
||||||
|
|
||||||
# need this always selected by IOMMU for the VIA workaround
|
# need this always selected by IOMMU for the VIA workaround
|
||||||
config SWIOTLB
|
config SWIOTLB
|
||||||
def_bool y if X86_64
|
def_bool y if X86_64
|
||||||
|
|
|
@ -123,7 +123,7 @@ ifeq ($(CONFIG_X86_64),y)
|
||||||
|
|
||||||
obj-$(CONFIG_GART_IOMMU) += amd_gart_64.o aperture_64.o
|
obj-$(CONFIG_GART_IOMMU) += amd_gart_64.o aperture_64.o
|
||||||
obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary_64.o tce_64.o
|
obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary_64.o tce_64.o
|
||||||
obj-$(CONFIG_AMD_IOMMU) += amd_iommu_init.o amd_iommu.o
|
obj-$(CONFIG_AMD_IOMMU) += amd_iommu_init.o
|
||||||
|
|
||||||
obj-$(CONFIG_PCI_MMCONFIG) += mmconf-fam10h_64.o
|
obj-$(CONFIG_PCI_MMCONFIG) += mmconf-fam10h_64.o
|
||||||
obj-y += vsmp_64.o
|
obj-y += vsmp_64.o
|
||||||
|
|
|
@ -17,3 +17,32 @@ config MSM_IOMMU
|
||||||
config IOMMU_PGTABLES_L2
|
config IOMMU_PGTABLES_L2
|
||||||
def_bool y
|
def_bool y
|
||||||
depends on MSM_IOMMU && MMU && SMP && CPU_DCACHE_DISABLE=n
|
depends on MSM_IOMMU && MMU && SMP && CPU_DCACHE_DISABLE=n
|
||||||
|
|
||||||
|
# AMD IOMMU support
|
||||||
|
config AMD_IOMMU
|
||||||
|
bool "AMD IOMMU support"
|
||||||
|
select SWIOTLB
|
||||||
|
select PCI_MSI
|
||||||
|
select PCI_IOV
|
||||||
|
select IOMMU_API
|
||||||
|
depends on X86_64 && PCI && ACPI
|
||||||
|
---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 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_STATS
|
||||||
|
bool "Export AMD IOMMU statistics to debugfs"
|
||||||
|
depends on AMD_IOMMU
|
||||||
|
select DEBUG_FS
|
||||||
|
---help---
|
||||||
|
This option enables code in the AMD IOMMU driver to collect various
|
||||||
|
statistics about whats happening in the driver and exports that
|
||||||
|
information to userspace via debugfs.
|
||||||
|
If unsure, say N.
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
obj-$(CONFIG_IOMMU_API) += iommu.o
|
obj-$(CONFIG_IOMMU_API) += iommu.o
|
||||||
obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o msm_iommu_dev.o
|
obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o msm_iommu_dev.o
|
||||||
|
obj-$(CONFIG_AMD_IOMMU) += amd_iommu.o
|
||||||
|
|
Загрузка…
Ссылка в новой задаче