Merge branches 'arm/exynos', 'arm/mediatek', 'arm/msm', 'arm/smmu', 'virtio', 'x86/vt-d', 'x86/amd' and 'core' into next
This commit is contained in:
@@ -144,6 +144,32 @@ config IOMMU_DMA
|
||||
select IRQ_MSI_IOMMU
|
||||
select NEED_SG_DMA_LENGTH
|
||||
|
||||
config IOMMU_DMA_PCI_SAC
|
||||
bool "Enable 64-bit legacy PCI optimisation by default"
|
||||
depends on IOMMU_DMA
|
||||
help
|
||||
Enable by default an IOMMU optimisation for 64-bit legacy PCI devices,
|
||||
wherein the DMA API layer will always first try to allocate a 32-bit
|
||||
DMA address suitable for a single address cycle, before falling back
|
||||
to allocating from the device's full usable address range. If your
|
||||
system has 64-bit legacy PCI devices in 32-bit slots where using dual
|
||||
address cycles reduces DMA throughput significantly, this may be
|
||||
beneficial to overall performance.
|
||||
|
||||
If you have a modern PCI Express based system, this feature mostly just
|
||||
represents extra overhead in the allocation path for no practical
|
||||
benefit, and it should usually be preferable to say "n" here.
|
||||
|
||||
However, beware that this feature has also historically papered over
|
||||
bugs where the IOMMU address width and/or device DMA mask is not set
|
||||
correctly. If device DMA problems and IOMMU faults start occurring
|
||||
after disabling this option, it is almost certainly indicative of a
|
||||
latent driver or firmware/BIOS bug, which would previously have only
|
||||
manifested with several gigabytes worth of concurrent DMA mappings.
|
||||
|
||||
If this option is not set, the feature can still be re-enabled at
|
||||
boot time with the "iommu.forcedac=0" command-line argument.
|
||||
|
||||
# Shared Virtual Addressing
|
||||
config IOMMU_SVA
|
||||
bool
|
||||
@@ -363,6 +389,16 @@ config ARM_SMMU_QCOM
|
||||
When running on a Qualcomm platform that has the custom variant
|
||||
of the ARM SMMU, this needs to be built into the SMMU driver.
|
||||
|
||||
config ARM_SMMU_QCOM_DEBUG
|
||||
bool "ARM SMMU QCOM implementation defined debug support"
|
||||
depends on ARM_SMMU_QCOM
|
||||
help
|
||||
Support for implementation specific debug features in ARM SMMU
|
||||
hardware found in QTI platforms.
|
||||
|
||||
Say Y here to enable debug for issues such as TLB sync timeouts
|
||||
which requires implementation defined register dumps.
|
||||
|
||||
config ARM_SMMU_V3
|
||||
tristate "ARM Ltd. System MMU Version 3 (SMMUv3) Support"
|
||||
depends on ARM64
|
||||
|
||||
Reference in New Issue
Block a user