Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
# Copyright (c) 2018 Savoir-Faire Linux.
# SPDX-License-Identifier: Apache-2.0

menuconfig SPI_NOR
	bool "SPI NOR Flash"
	default y
	depends on DT_HAS_JEDEC_SPI_NOR_ENABLED
	select FLASH_HAS_DRIVER_ENABLED
	select FLASH_HAS_PAGE_LAYOUT
	select FLASH_JESD216
	depends on SPI

if SPI_NOR

choice SPI_NOR_SFDP
	prompt "Source for Serial Flash Discoverable Parameters"
	default SPI_NOR_SFDP_MINIMAL

config SPI_NOR_SFDP_MINIMAL
	bool "Fixed flash configuration"
	help
	  Synthesize a minimal configuration assuming 256 By page size and
	  standard 4 KiBy and 64 KiBy erase instructions.  Requires the size and
	  jedec-id properties in the devicetree jedec,spi-nor node.

config SPI_NOR_SFDP_DEVICETREE
	bool "Basic Flash Parameters from devicetree node"
	help
	  The JESD216 Basic Flash Parameters table must be provided in the
	  sfdp-bfp property in devicetree.  The size and jedec-id properties are
	  also required.

config SPI_NOR_SFDP_RUNTIME
	bool "Read flash parameters at runtime"
	help
	  Read all flash device characteristics from the device at runtime.
	  This option is the most flexible as it should provide functionality
	  for all supported JESD216-compatible devices.

endchoice

config SPI_NOR_INIT_PRIORITY
	int
	default 80
	help
	  Device driver initialization priority.
	  Device is connected to SPI bus, it has to
	  be initialized after SPI driver.

config SPI_NOR_CS_WAIT_DELAY
	int "Delay time in us"
	default 0
	help
	  This is the wait delay (in us) to allow for CS switching to take effect

config SPI_NOR_FLASH_LAYOUT_PAGE_SIZE
	int "Page size to use for FLASH_LAYOUT feature"
	default 65536
	help
	  When CONFIG_FLASH_PAGE_LAYOUT is used this driver will support
	  that API.  By default the page size corresponds to the block
	  size (65536).  Other options include the 32K-byte erase size
	  (32768), the sector size (4096), or any non-zero multiple of the
	  sector size.

config SPI_NOR_IDLE_IN_DPD
	bool "Use Deep Power-Down mode when flash is not being accessed."
	help
	  Where supported deep power-down mode can reduce current draw
	  to as little as 0.1% of standby current.  However it takes
	  some milliseconds to enter and exit from this mode.

	  Select this option for applications where device power
	  management is not enabled, the flash remains inactive for
	  long periods, and when used the impact of waiting for mode
	  enter and exit delays is acceptable.

endif # SPI_NOR