]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - drivers/spi/Kconfig
karo: cleanup after merge of v2015.10-rc2
[karo-tx-uboot.git] / drivers / spi / Kconfig
1 menuconfig SPI
2         bool "SPI support"
3
4 if SPI
5
6 config DM_SPI
7         bool "Enable Driver Model for SPI drivers"
8         depends on DM && SPI
9         help
10           Enable driver model for SPI. The SPI slave interface
11           (spi_setup_slave(), spi_xfer(), etc.) is then implemented by
12           the SPI uclass. Drivers provide methods to access the SPI
13           buses that they control. The uclass interface is defined in
14           include/spi.h. The existing spi_slave structure is attached
15           as 'parent data' to every slave on each bus. Slaves
16           typically use driver-private data instead of extending the
17           spi_slave structure.
18
19 if DM_SPI
20
21 config CADENCE_QSPI
22         bool "Cadence QSPI driver"
23         help
24           Enable the Cadence Quad-SPI (QSPI) driver. This driver can be
25           used to access the SPI NOR flash on platforms embedding this
26           Cadence IP core.
27
28 config DESIGNWARE_SPI
29         bool "Designware SPI driver"
30         help
31           Enable the Designware SPI driver. This driver can be used to
32           access the SPI NOR flash on platforms embedding this Designware
33           IP core.
34
35 config EXYNOS_SPI
36         bool "Samsung Exynos SPI driver"
37         help
38           Enable the Samsung Exynos SPI driver. This driver can be used to
39           access the SPI NOR flash on platforms embedding this Samsung
40           Exynos IP core.
41
42 config FSL_DSPI
43         bool "Freescale DSPI driver"
44         help
45           Enable the Freescale DSPI driver. This driver can be used to
46           access the SPI NOR flash and SPI Data flash on platforms embedding
47           this Freescale DSPI IP core. LS102xA and Colibri VF50/VF61 platforms
48           use this driver.
49
50 config FSL_QSPI
51         bool "Freescale QSPI driver"
52         help
53           Enable the Freescale Quad-SPI (QSPI) driver. This driver can be
54           used to access the SPI NOR flash on platforms embedding this
55           Freescale IP core.
56
57 config ICH_SPI
58         bool "Intel ICH SPI driver"
59         help
60           Enable the Intel ICH SPI driver. This driver can be used to
61           access the SPI NOR flash on platforms embedding this Intel
62           ICH IP core.
63
64 config SANDBOX_SPI
65         bool "Sandbox SPI driver"
66         depends on SANDBOX && DM
67         help
68           Enable SPI support for sandbox. This is an emulation of a real SPI
69           bus. Devices can be attached to the bus using the device tree
70           which specifies the driver to use. As an example, see this device
71           tree fragment from sandbox.dts. It shows that the SPI bus has a
72           single flash device on chip select 0 which is emulated by the driver
73           for "sandbox,spi-flash", which is in drivers/mtd/spi/sandbox.c.
74
75           spi@0 {
76                 #address-cells = <1>;
77                 #size-cells = <0>;
78                 reg = <0>;
79                 compatible = "sandbox,spi";
80                 cs-gpios = <0>, <&gpio_a 0>;
81                 flash@0 {
82                         reg = <0>;
83                         compatible = "spansion,m25p16", "sandbox,spi-flash";
84                         spi-max-frequency = <40000000>;
85                         sandbox,filename = "spi.bin";
86                 };
87           };
88
89 config TEGRA114_SPI
90         bool "nVidia Tegra114 SPI driver"
91         help
92           Enable the nVidia Tegra114 SPI driver. This driver can be used to
93           access the SPI NOR flash on platforms embedding this nVidia Tegra114
94           IP core.
95
96           This controller is different than the older SoCs SPI controller and
97           also register interface get changed with this controller.
98
99 config TEGRA20_SFLASH
100         bool "nVidia Tegra20 Serial Flash controller driver"
101         help
102           Enable the nVidia Tegra20 Serial Flash controller driver. This driver
103           can be used to access the SPI NOR flash on platforms embedding this
104           nVidia Tegra20 IP core.
105
106 config TEGRA20_SLINK
107         bool "nVidia Tegra20/Tegra30 SLINK driver"
108         help
109           Enable the nVidia Tegra20/Tegra30 SLINK driver. This driver can
110           be used to access the SPI NOR flash on platforms embedding this
111           nVidia Tegra20/Tegra30 IP cores.
112
113 config XILINX_SPI
114         bool "Xilinx SPI driver"
115         help
116           Enable the Xilinx SPI driver from the Xilinx EDK. This SPI
117           controller support 8 bit SPI transfers only, with or w/o FIFO.
118           For more info on Xilinx SPI Register Definitions and Overview
119           see driver file - drivers/spi/xilinx_spi.c
120
121 config ZYNQ_SPI
122         bool "Zynq SPI driver"
123         depends on ARCH_ZYNQ || TARGET_XILINX_ZYNQMP
124         help
125           Enable the Zynq SPI driver. This driver can be used to
126           access the SPI NOR flash on platforms embedding this Zynq
127           SPI IP core.
128
129 endif # if DM_SPI
130
131 config FSL_ESPI
132         bool "Freescale eSPI driver"
133         help
134           Enable the Freescale eSPI driver. This driver can be used to
135           access the SPI interface and SPI NOR flash on platforms embedding
136           this Freescale eSPI IP core.
137
138 config TI_QSPI
139         bool "TI QSPI driver"
140         help
141           Enable the TI Quad-SPI (QSPI) driver for DRA7xx and AM43xx evms.
142           This driver support spi flash single, quad and memory reads.
143
144 endif