xref: /linux/drivers/mtd/spi-nor/Kconfig (revision ab520be8cd5d56867fc95cfbc34b90880faf1f9d)
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_ATMEL_QUADSPI
33	tristate "Atmel Quad SPI Controller"
34	depends on ARCH_AT91 || (ARM && COMPILE_TEST)
35	depends on OF && HAS_IOMEM
36	help
37	  This enables support for the Quad SPI controller in master mode.
38	  This driver does not support generic SPI. The implementation only
39	  supports SPI NOR.
40
41config SPI_CADENCE_QUADSPI
42	tristate "Cadence Quad SPI controller"
43	depends on OF && ARM
44	help
45	  Enable support for the Cadence Quad SPI Flash controller.
46
47	  Cadence QSPI is a specialized controller for connecting an SPI
48	  Flash over 1/2/4-bit wide bus. Enable this option if you have a
49	  device with a Cadence QSPI controller and want to access the
50	  Flash as an MTD device.
51
52config SPI_FSL_QUADSPI
53	tristate "Freescale Quad SPI controller"
54	depends on ARCH_MXC || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST
55	depends on HAS_IOMEM
56	help
57	  This enables support for the Quad SPI controller in master mode.
58	  This controller does not support generic SPI. It only supports
59	  SPI NOR.
60
61config SPI_HISI_SFC
62	tristate "Hisilicon SPI-NOR Flash Controller(SFC)"
63	depends on ARCH_HISI || COMPILE_TEST
64	depends on HAS_IOMEM && HAS_DMA
65	help
66	  This enables support for hisilicon SPI-NOR flash controller.
67
68config SPI_NXP_SPIFI
69	tristate "NXP SPI Flash Interface (SPIFI)"
70	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
71	depends on HAS_IOMEM
72	help
73	  Enable support for the NXP LPC SPI Flash Interface controller.
74
75	  SPIFI is a specialized controller for connecting serial SPI
76	  Flash. Enable this option if you have a device with a SPIFI
77	  controller and want to access the Flash as a mtd device.
78
79endif # MTD_SPI_NOR
80