mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 09:04:39 +02:00
This driver used to use a lot of page table constants from the architecture code which prevented COMPILE_TEST on other architectures. Now that iommupt provides all of the constants internally there are only two small bumps preventing COMPILE_TEST. - Use the generic functions for the riscv specific phys_to_pfn() and pfn_to_phys() - Use CONFIG_MMIOWB to block off the mmiowb() barrier - Require 64 bit because of writeq use failing compilation on 32 bit Tested-by: Vincent Chen <vincent.chen@sifive.com> Acked-by: Paul Walmsley <pjw@kernel.org> # arch/riscv Reviewed-by: Tomasz Jeznach <tjeznach@rivosinc.com> Tested-by: Tomasz Jeznach <tjeznach@rivosinc.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
25 lines
731 B
Plaintext
25 lines
731 B
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
# RISC-V IOMMU support
|
|
|
|
config RISCV_IOMMU
|
|
bool "RISC-V IOMMU Support"
|
|
default RISCV
|
|
depends on GENERIC_MSI_IRQ
|
|
depends on (RISCV || COMPILE_TEST) && 64BIT
|
|
select IOMMU_API
|
|
select GENERIC_PT
|
|
select IOMMU_PT
|
|
select IOMMU_PT_RISCV64
|
|
help
|
|
Support for implementations of the RISC-V IOMMU architecture that
|
|
complements the RISC-V MMU capabilities, providing similar address
|
|
translation and protection functions for accesses from I/O devices.
|
|
|
|
Say Y here if your SoC includes an IOMMU device implementing
|
|
the RISC-V IOMMU architecture.
|
|
|
|
config RISCV_IOMMU_PCI
|
|
def_bool y if RISCV_IOMMU && PCI_MSI
|
|
help
|
|
Support for the PCIe implementation of RISC-V IOMMU architecture.
|