123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- menu "SPI Flash Support"
- config DM_SPI_FLASH
- bool "Enable Driver Model for SPI flash"
- depends on DM && DM_SPI
- imply SPI_FLASH
- help
- Enable driver model for SPI flash. This SPI flash interface
- (spi_flash_probe(), spi_flash_write(), etc.) is then
- implemented by the SPI flash uclass. There is one standard
- SPI flash driver which knows how to probe most chips
- supported by U-Boot. The uclass interface is defined in
- include/spi_flash.h, but is currently fully compatible
- with the old interface to avoid confusion and duplication
- during the transition parent. SPI and SPI flash must be
- enabled together (it is not possible to use driver model
- for one and not the other).
- config SPI_FLASH_SANDBOX
- bool "Support sandbox SPI flash device"
- depends on SANDBOX && DM_SPI_FLASH
- help
- Since sandbox cannot access real devices, an emulation mechanism is
- provided instead. Drivers can be connected up to the sandbox SPI
- bus (see CONFIG_SANDBOX_SPI) and SPI traffic will be routed to this
- device. Typically the contents of the emulated SPI flash device is
- stored in a file on the host filesystem.
- config SPI_FLASH
- bool "SPI Flash Core Interface support"
- select SPI_MEM
- help
- Enable the SPI flash Core support. This will include basic
- standard support for things like probing, read / write, and
- erasing through cmd_sf interface.
- If unsure, say N
- config SF_DEFAULT_BUS
- int "SPI Flash default bus identifier"
- depends on SPI_FLASH || DM_SPI_FLASH
- default 0
- help
- The default bus may be provided by the platform
- to handle the common case when only a single serial
- flash is present on the system.
- config SF_DEFAULT_CS
- int "SPI Flash default Chip-select"
- depends on SPI_FLASH || DM_SPI_FLASH
- default 0
- help
- The default chip select may be provided by the platform
- to handle the common case when only a single serial
- flash is present on the system.
- config SF_DEFAULT_MODE
- hex "SPI Flash default mode (see include/spi.h)"
- depends on SPI_FLASH || DM_SPI_FLASH
- default 0
- help
- The default mode may be provided by the platform
- to handle the common case when only a single serial
- flash is present on the system.
- Not used for boot with device tree; the SPI driver reads
- speed and mode from plat values computed from
- available node.
- config SF_DEFAULT_SPEED
- int "SPI Flash default speed in Hz"
- depends on SPI_FLASH || DM_SPI_FLASH
- default 1000000
- help
- The default speed may be provided by the platform
- to handle the common case when only a single serial
- flash is present on the system.
- Not used for boot with device tree; the SPI driver reads
- speed and mode from plat values computed from
- available node.
- if SPI_FLASH
- config SPI_FLASH_SFDP_SUPPORT
- bool "SFDP table parsing support for SPI NOR flashes"
- depends on !SPI_FLASH_BAR
- help
- Enable support for parsing and auto discovery of parameters for
- SPI NOR flashes using Serial Flash Discoverable Parameters (SFDP)
- tables as per JESD216 standard.
- config SPI_FLASH_SMART_HWCAPS
- bool "Smart hardware capability detection based on SPI MEM supports_op() hook"
- default y
- help
- Enable support for smart hardware capability detection based on SPI
- MEM supports_op() hook that lets controllers express whether they
- can support a type of operation in a much more refined way compared
- to using flags like SPI_RX_DUAL, SPI_TX_QUAD, etc.
- config SPI_FLASH_SOFT_RESET
- bool "Software Reset support for SPI NOR flashes"
- help
- Enable support for xSPI Software Reset. It will be used to switch from
- Octal DTR mode to legacy mode on shutdown and boot (if enabled).
- config SPI_FLASH_SOFT_RESET_ON_BOOT
- bool "Perform a Software Reset on boot on flashes that boot in stateful mode"
- depends on SPI_FLASH_SOFT_RESET
- help
- Perform a Software Reset on boot to allow detecting flashes that are
- handed to us in Octal DTR mode. Do not enable this config on flashes
- that are not supposed to be handed to U-Boot in Octal DTR mode, even
- if they _do_ support the Soft Reset sequence.
- config SPI_FLASH_BAR
- bool "SPI flash Bank/Extended address register support"
- help
- Enable the SPI flash Bank/Extended address register support.
- Bank/Extended address registers are used to access the flash
- which has size > 16MiB in 3-byte addressing.
- config SPI_FLASH_UNLOCK_ALL
- bool "Unlock the entire SPI flash on u-boot startup"
- default y
- help
- Some flashes tend to power up with the software write protection
- bits set. If this option is set, the whole flash will be unlocked.
- For legacy reasons, this option default to y. But if you intend to
- actually use the software protection bits you should say n here.
- config SF_DUAL_FLASH
- bool "SPI DUAL flash memory support"
- help
- Enable this option to support two flash memories connected to a single
- controller. Currently Xilinx Zynq qspi supports this.
- config SPI_FLASH_ATMEL
- bool "Atmel SPI flash support"
- help
- Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx)
- config SPI_FLASH_EON
- bool "EON SPI flash support"
- help
- Add support for various EON SPI flash chips (EN25xxx)
- config SPI_FLASH_GIGADEVICE
- bool "GigaDevice SPI flash support"
- help
- Add support for various GigaDevice SPI flash chips (GD25xxx)
- config SPI_FLASH_ISSI
- bool "ISSI SPI flash support"
- help
- Add support for various ISSI SPI flash chips (ISxxx)
- config SPI_FLASH_MACRONIX
- bool "Macronix SPI flash support"
- help
- Add support for various Macronix SPI flash chips (MX25Lxxx)
- config SPI_FLASH_SPANSION
- bool "Spansion SPI flash support"
- help
- Add support for various Spansion SPI flash chips (S25FLxxx)
- config SPI_FLASH_S28HS512T
- bool "Cypress S28HS512T chip support"
- depends on SPI_FLASH_SPANSION
- help
- Add support for the Cypress S28HS512T chip. This is a separate config
- because the fixup hooks for this flash add extra size overhead. Boards
- that don't use the flash can disable this to save space.
- config SPI_FLASH_STMICRO
- bool "STMicro SPI flash support"
- help
- Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx)
- config SPI_FLASH_MT35XU
- bool "Micron MT35XU chip support"
- depends on SPI_FLASH_STMICRO
- help
- Add support for the Micron MT35XU chip. This is a separate config
- because the fixup hooks for this flash add extra size overhead. Boards
- that don't use the flash can disable this to save space.
- config SPI_FLASH_SST
- bool "SST SPI flash support"
- help
- Add support for various SST SPI flash chips (SST25xxx)
- config SPI_FLASH_WINBOND
- bool "Winbond SPI flash support"
- help
- Add support for various Winbond SPI flash chips (W25xxx)
- config SPI_FLASH_XMC
- bool "XMC SPI flash support"
- help
- Add support for various XMC (Wuhan Xinxin Semiconductor
- Manufacturing Corp.) SPI flash chips (XM25xxx)
- config SPI_FLASH_XTX
- bool "XTX SPI flash support"
- help
- Add support for various XTX (XTX Technology Limited)
- SPI flash chips (XT25xxx).
- endif
- config SPI_FLASH_USE_4K_SECTORS
- bool "Use small 4096 B erase sectors"
- depends on SPI_FLASH
- default y
- help
- Many flash memories support erasing small (4096 B) sectors. Depending
- on the usage this feature may provide performance gain in comparison
- to erasing whole blocks (32/64 KiB).
- Changing a small part of the flash's contents is usually faster with
- small sectors. On the other hand erasing should be faster when using
- 64 KiB block instead of 16 × 4 KiB sectors.
- Please note that some tools/drivers/filesystems may not work with
- 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum).
- config SPI_FLASH_DATAFLASH
- bool "AT45xxx DataFlash support"
- depends on SPI_FLASH && DM_SPI_FLASH
- help
- Enable the access for SPI-flash-based AT45xxx DataFlash chips.
- DataFlash is a kind of SPI flash. Most AT45 chips have two buffers
- in each chip, which may be used for double buffered I/O; but this
- driver doesn't (yet) use these for any kind of i/o overlap or prefetching.
- Sometimes DataFlash is packaged in MMC-format cards, although the
- MMC stack can't (yet?) distinguish between MMC and DataFlash
- protocols during enumeration.
- If unsure, say N
- config SPI_FLASH_MTD
- bool "SPI Flash MTD support"
- depends on SPI_FLASH && MTD
- help
- Enable the MTD support for spi flash layer, this adapter is for
- translating mtd_read/mtd_write commands into spi_flash_read/write
- commands. It is not intended to use it within sf_cmd or the SPI
- flash subsystem. Such an adapter is needed for subsystems like
- UBI which can only operate on top of the MTD layer.
- If unsure, say N
- config SPL_SPI_FLASH_MTD
- bool "SPI flash MTD support for SPL"
- depends on SPI_FLASH
- help
- Enable the MTD support for the SPI flash layer in SPL.
- If unsure, say N
- endmenu # menu "SPI Flash Support"
|