Skip to content
Snippets Groups Projects
  • Mark Kettenis's avatar
    40dbf03d
    iommu: Add IOMMU uclass · 40dbf03d
    Mark Kettenis authored
    
    This uclass is intended to manage IOMMUs on systems where the
    IOMMUs are not in bypass mode by default.  In that case U-Boot
    cannot ignore the IOMMUs if it wants to use devices that need
    to do DMA and sit behind such an IOMMU.
    
    This initial IOMMU uclass implementation does not implement and
    device ops and is intended for IOMMUs that have a bypass mode
    that does not require address translation.  Support for IOMMUs
    that do require address translation is planned and device ops
    will be defined when support for such IOMMUs will be added.
    
    Signed-off-by: default avatarMark Kettenis <kettenis@openbsd.org>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
    40dbf03d
    History
    iommu: Add IOMMU uclass
    Mark Kettenis authored
    
    This uclass is intended to manage IOMMUs on systems where the
    IOMMUs are not in bypass mode by default.  In that case U-Boot
    cannot ignore the IOMMUs if it wants to use devices that need
    to do DMA and sit behind such an IOMMU.
    
    This initial IOMMU uclass implementation does not implement and
    device ops and is intended for IOMMUs that have a bypass mode
    that does not require address translation.  Support for IOMMUs
    that do require address translation is planned and device ops
    will be defined when support for such IOMMUs will be added.
    
    Signed-off-by: default avatarMark Kettenis <kettenis@openbsd.org>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
Kconfig 2.66 KiB
menu "Device Drivers"

source "drivers/core/Kconfig"

# types of drivers sorted in alphabetical order

source "drivers/adc/Kconfig"

source "drivers/ata/Kconfig"

source "drivers/axi/Kconfig"

source "drivers/bus/Kconfig"

source "drivers/block/Kconfig"

source "drivers/bootcount/Kconfig"

source "drivers/button/Kconfig"

source "drivers/cache/Kconfig"

source "drivers/clk/Kconfig"

source "drivers/cpu/Kconfig"

source "drivers/crypto/Kconfig"

source "drivers/ddr/Kconfig"

source "drivers/demo/Kconfig"

source "drivers/ddr/fsl/Kconfig"

source "drivers/dfu/Kconfig"

source "drivers/dma/Kconfig"

source "drivers/fastboot/Kconfig"

source "drivers/firmware/Kconfig"

source "drivers/fpga/Kconfig"

source "drivers/gpio/Kconfig"

source "drivers/hwspinlock/Kconfig"

source "drivers/i2c/Kconfig"

source "drivers/input/Kconfig"

source "drivers/iommu/Kconfig"

source "drivers/led/Kconfig"

source "drivers/mailbox/Kconfig"

source "drivers/memory/Kconfig"

source "drivers/misc/Kconfig"

source "drivers/mmc/Kconfig"

source "drivers/mtd/Kconfig"

source "drivers/mux/Kconfig"

source "drivers/net/Kconfig"
source "drivers/nvme/Kconfig"

source "drivers/pci/Kconfig"

source "drivers/pci_endpoint/Kconfig"

source "drivers/pch/Kconfig"

source "drivers/phy/Kconfig"

source "drivers/phy/allwinner/Kconfig"

source "drivers/phy/marvell/Kconfig"

source "drivers/phy/socionext/Kconfig"

source "drivers/pinctrl/Kconfig"

source "drivers/power/Kconfig"

source "drivers/pwm/Kconfig"

source "drivers/qe/Kconfig"

source "drivers/ram/Kconfig"

source "drivers/reboot-mode/Kconfig"

source "drivers/remoteproc/Kconfig"

source "drivers/reset/Kconfig"

source "drivers/rng/Kconfig"

source "drivers/rtc/Kconfig"

source "drivers/scsi/Kconfig"

source "drivers/serial/Kconfig"

source "drivers/smem/Kconfig"

source "drivers/sound/Kconfig"

source "drivers/soc/Kconfig"

source "drivers/spi/Kconfig"

source "drivers/spmi/Kconfig"

source "drivers/sysinfo/Kconfig"

source "drivers/sysreset/Kconfig"

source "drivers/tee/Kconfig"

source "drivers/thermal/Kconfig"

source "drivers/timer/Kconfig"

source "drivers/tpm/Kconfig"

source "drivers/usb/Kconfig"

source "drivers/ufs/Kconfig"

source "drivers/video/Kconfig"

source "drivers/virtio/Kconfig"
source "drivers/w1/Kconfig"

source "drivers/w1-eeprom/Kconfig"

source "drivers/watchdog/Kconfig"

source "drivers/xen/Kconfig"

config PHYS_TO_BUS
	bool "Custom physical to bus address mapping"
	help
	  Some SoCs use a different address map for CPU physical addresses and
	  peripheral DMA master accesses. If yours does, select this option in
	  your platform's Kconfig, and implement the appropriate mapping
	  functions in your platform's support code.

endmenu