mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-18 18:59:44 +00:00
a722359de4
The Allwinner SPI flash SPL boot support is guarded by the SPL_SPI_SUNXI symbol. But despite its generic name, the actual only use case for this is to provide SPI flash support to the SPL, which requires CONFIG_SPL_SPI_FLASH_SUPPORT to be defined. Select this symbol from the SPL_SPI_SUNXI Kconfig definition. This avoids doing this explicitly in the defconfig, and fixes SPI booting on the Pine64 SoPine (and -LTS version) and the OrangePi Win board (both with SPI flash). Signed-off-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
151 lines
4.9 KiB
Text
151 lines
4.9 KiB
Text
menu "SPI Flash Support"
|
||
|
||
config DM_SPI_FLASH
|
||
bool "Enable Driver Model for SPI flash"
|
||
depends on DM && DM_SPI
|
||
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 "Legacy SPI Flash Interface support"
|
||
help
|
||
Enable the legacy SPI flash support. This will include basic
|
||
standard support for things like probing, read / write, and
|
||
erasing through cmd_sf interface.
|
||
|
||
If unsure, say N
|
||
|
||
config SPI_FLASH_BAR
|
||
bool "SPI flash Bank/Extended address register support"
|
||
depends on SPI_FLASH
|
||
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 SF_DUAL_FLASH
|
||
bool "SPI DUAL flash memory support"
|
||
depends on SPI_FLASH
|
||
help
|
||
Enable this option to support two flash memories connected to a single
|
||
controller. Currently Xilinx Zynq qspi supports this.
|
||
|
||
if SPI_FLASH
|
||
|
||
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_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_STMICRO
|
||
bool "STMicro SPI flash support"
|
||
help
|
||
Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx)
|
||
|
||
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)
|
||
|
||
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
|
||
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
|
||
|
||
if SPL
|
||
|
||
config SPL_SPI_SUNXI
|
||
bool "Support for SPI Flash on Allwinner SoCs in SPL"
|
||
depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || MACH_SUNXI_H3_H5 || MACH_SUN50I
|
||
select SPL_SPI_FLASH_SUPPORT
|
||
---help---
|
||
Enable support for SPI Flash. This option allows SPL to read from
|
||
sunxi SPI Flash. It uses the same method as the boot ROM, so does
|
||
not need any extra configuration.
|
||
|
||
endif
|
||
|
||
endmenu # menu "SPI Flash Support"
|