kernel/dma/Kconfig

Source file repositories/reference/linux-study-clean/kernel/dma/Kconfig

File Facts

System
Linux kernel
Corpus path
kernel/dma/Kconfig
Extension
[no extension]
Size
7389 bytes
Lines
280
Domain
Core OS
Bucket
Scheduler, Processes, Timers, Sync, And Syscalls
Inferred role
Core OS: build/configuration rule
Status
atlas-only

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only

config NO_DMA
	bool

config HAS_DMA
	bool
	depends on !NO_DMA
	default y

config DMA_OPS_HELPERS
	bool

#
# IOMMU drivers that can bypass the IOMMU code and optionally use the direct
# mapping fast path should select this option and set the dma_ops_bypass
# flag in struct device where applicable
#
config DMA_OPS_BYPASS
	bool

# Lets platform IOMMU driver choose between bypass and IOMMU
config ARCH_HAS_DMA_MAP_DIRECT
	bool

config NEED_SG_DMA_FLAGS
	bool

config NEED_SG_DMA_LENGTH
	bool

config NEED_DMA_MAP_STATE
	bool

config ARCH_DMA_ADDR_T_64BIT
	def_bool 64BIT || PHYS_ADDR_T_64BIT

config ARCH_HAS_DMA_SET_MASK
	bool

#
# Select this option if the architecture needs special handling for
# DMA_ATTR_WRITE_COMBINE.  Normally the "uncached" mapping should be what
# people think of when saying write combine, so very few platforms should
# need to enable this.
#
config ARCH_HAS_DMA_WRITE_COMBINE
	bool

config DMA_DECLARE_COHERENT
	bool

config ARCH_HAS_SETUP_DMA_OPS
	bool

config ARCH_HAS_TEARDOWN_DMA_OPS
	bool

config ARCH_HAS_SYNC_DMA_FOR_DEVICE
	bool

config ARCH_HAS_SYNC_DMA_FOR_CPU
	bool
	select NEED_DMA_MAP_STATE

config ARCH_HAS_SYNC_DMA_FOR_CPU_ALL
	bool

config ARCH_HAS_DMA_PREP_COHERENT
	bool

Annotation

Implementation Notes