1menuconfig MTD_SPI_NOR 2 tristate "SPI-NOR device support" 3 depends on MTD 4 help 5 This is the framework for the SPI NOR which can be used by the SPI 6 device drivers and the SPI-NOR device driver. 7 8if MTD_SPI_NOR 9 10config MTD_MT81xx_NOR 11 tristate "Mediatek MT81xx SPI NOR flash controller" 12 depends on HAS_IOMEM 13 help 14 This enables access to SPI NOR flash, using MT81xx SPI NOR flash 15 controller. This controller does not support generic SPI BUS, it only 16 supports SPI NOR Flash. 17 18config MTD_SPI_NOR_USE_4K_SECTORS 19 bool "Use small 4096 B erase sectors" 20 default y 21 help 22 Many flash memories support erasing small (4096 B) sectors. Depending 23 on the usage this feature may provide performance gain in comparison 24 to erasing whole blocks (32/64 KiB). 25 Changing a small part of the flash's contents is usually faster with 26 small sectors. On the other hand erasing should be faster when using 27 64 KiB block instead of 16 × 4 KiB sectors. 28 29 Please note that some tools/drivers/filesystems may not work with 30 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum). 31 32config SPI_ASPEED_SMC 33 tristate "Aspeed flash controllers in SPI mode" 34 depends on ARCH_ASPEED || COMPILE_TEST 35 depends on HAS_IOMEM && OF 36 help 37 This enables support for the Firmware Memory controller (FMC) 38 in the Aspeed AST2500/AST2400 SoCs when attached to SPI NOR chips, 39 and support for the SPI flash memory controller (SPI) for 40 the host firmware. The implementation only supports SPI NOR. 41 42config SPI_ATMEL_QUADSPI 43 tristate "Atmel Quad SPI Controller" 44 depends on ARCH_AT91 || (ARM && COMPILE_TEST) 45 depends on OF && HAS_IOMEM 46 help 47 This enables support for the Quad SPI controller in master mode. 48 This driver does not support generic SPI. The implementation only 49 supports SPI NOR. 50 51config SPI_CADENCE_QUADSPI 52 tristate "Cadence Quad SPI controller" 53 depends on OF && (ARM || COMPILE_TEST) 54 help 55 Enable support for the Cadence Quad SPI Flash controller. 56 57 Cadence QSPI is a specialized controller for connecting an SPI 58 Flash over 1/2/4-bit wide bus. Enable this option if you have a 59 device with a Cadence QSPI controller and want to access the 60 Flash as an MTD device. 61 62config SPI_FSL_QUADSPI 63 tristate "Freescale Quad SPI controller" 64 depends on ARCH_MXC || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST 65 depends on HAS_IOMEM 66 help 67 This enables support for the Quad SPI controller in master mode. 68 This controller does not support generic SPI. It only supports 69 SPI NOR. 70 71config SPI_HISI_SFC 72 tristate "Hisilicon SPI-NOR Flash Controller(SFC)" 73 depends on ARCH_HISI || COMPILE_TEST 74 depends on HAS_IOMEM && HAS_DMA 75 help 76 This enables support for hisilicon SPI-NOR flash controller. 77 78config SPI_NXP_SPIFI 79 tristate "NXP SPI Flash Interface (SPIFI)" 80 depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 81 depends on HAS_IOMEM 82 help 83 Enable support for the NXP LPC SPI Flash Interface controller. 84 85 SPIFI is a specialized controller for connecting serial SPI 86 Flash. Enable this option if you have a device with a SPIFI 87 controller and want to access the Flash as a mtd device. 88 89config SPI_INTEL_SPI 90 tristate 91 92config SPI_INTEL_SPI_PLATFORM 93 tristate "Intel PCH/PCU SPI flash platform driver" if EXPERT 94 depends on X86 95 select SPI_INTEL_SPI 96 help 97 This enables platform support for the Intel PCH/PCU SPI 98 controller in master mode. This controller is present in modern 99 Intel hardware and is used to hold BIOS and other persistent 100 settings. Using this driver it is possible to upgrade BIOS 101 directly from Linux. 102 103 Say N here unless you know what you are doing. Overwriting the 104 SPI flash may render the system unbootable. 105 106 To compile this driver as a module, choose M here: the module 107 will be called intel-spi-platform. 108 109endif # MTD_SPI_NOR 110