drivers/mtd/maps/Kconfig

Source file repositories/reference/linux-study-clean/drivers/mtd/maps/Kconfig

File Facts

System
Linux kernel
Corpus path
drivers/mtd/maps/Kconfig
Extension
[no extension]
Size
10636 bytes
Lines
318
Domain
Driver Families
Bucket
drivers/mtd
Inferred role
Driver Families: build/configuration rule
Status
atlas-only

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only
menu "Mapping drivers for chip access"
	depends on MTD!=n
	depends on HAS_IOMEM

config MTD_COMPLEX_MAPPINGS
	bool "Support non-linear mappings of flash chips"
	help
	  This causes the chip drivers to allow for complicated
	  paged mappings of flash chips.

config MTD_PHYSMAP
	tristate "Flash device in physical memory map"
	depends on MTD_CFI || MTD_JEDECPROBE || MTD_ROM || MTD_RAM || MTD_LPDDR
	help
	  This provides a 'mapping' driver which allows the NOR Flash and
	  ROM driver code to communicate with chips which are mapped
	  physically into the CPU's memory. You will need to configure
	  the physical address and size of the flash chips on your
	  particular board as well as the bus width, either statically
	  with config options or at run-time.

	  To compile this driver as a module, choose M here: the
	  module will be called physmap.

config MTD_PHYSMAP_COMPAT
	bool "Physmap compat support"
	depends on MTD_PHYSMAP
	default n
	help
	  Setup a simple mapping via the Kconfig options.  Normally the
	  physmap configuration options are done via your board's
	  resource file.

	  If unsure, say N here.

config MTD_PHYSMAP_START
	hex "Physical start address of flash mapping"
	depends on MTD_PHYSMAP_COMPAT
	default "0x8000000"
	help
	  This is the physical memory location at which the flash chips
	  are mapped on your particular target board. Refer to the
	  memory map which should hopefully be in the documentation for
	  your board.

config MTD_PHYSMAP_LEN
	hex "Physical length of flash mapping"
	depends on MTD_PHYSMAP_COMPAT
	default "0"
	help
	  This is the total length of the mapping of the flash chips on
	  your particular board. If there is space, or aliases, in the
	  physical memory map between the chips, this could be larger
	  than the total amount of flash present. Refer to the memory
	  map which should hopefully be in the documentation for your
	  board.

config MTD_PHYSMAP_BANKWIDTH
	int "Bank width in octets"
	depends on MTD_PHYSMAP_COMPAT
	default "2"
	help
	  This is the total width of the data bus of the flash devices
	  in octets. For example, if you have a data bus width of 32
	  bits, you would set the bus width octet value to 4. This is
	  used internally by the CFI drivers.

config MTD_PHYSMAP_OF
	bool "Memory device in physical memory map based on OF description"

Annotation

Implementation Notes