]> git.karo-electronics.de Git - karo-tx-uboot.git/blob - drivers/spi/Kconfig
5312ce7dd8e377916a821eeeaa049da8ab2ceb42
[karo-tx-uboot.git] / drivers / spi / Kconfig
1 menu "SPI Support"
2
3 config SPI
4         bool "Enable SPI support"
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 XILINX_SPI
100         bool "Xilinx SPI driver"
101         help
102           Enable the Xilinx SPI driver from the Xilinx EDK. This SPI
103           controller support 8 bit SPI transfers only, with or w/o FIFO.
104           For more info on Xilinx SPI Register Definitions and Overview
105           see driver file - drivers/spi/xilinx_spi.c
106
107 config ZYNQ_SPI
108         bool "Zynq SPI driver"
109         depends on ARCH_ZYNQ || TARGET_XILINX_ZYNQMP
110         help
111           Enable the Zynq SPI driver. This driver can be used to
112           access the SPI NOR flash on platforms embedding this Zynq
113           SPI IP core.
114
115 endif # if DM_SPI
116
117 config FSL_ESPI
118         bool "Freescale eSPI driver"
119         help
120           Enable the Freescale eSPI driver. This driver can be used to
121           access the SPI interface and SPI NOR flash on platforms embedding
122           this Freescale eSPI IP core.
123
124 config TI_QSPI
125         bool "TI QSPI driver"
126         help
127           Enable the TI Quad-SPI (QSPI) driver for DRA7xx and AM43xx evms.
128           This driver support spi flash single, quad and memory reads.
129
130 endmenu # menu "SPI Support"