1de823053SJagan Tekimenu "SPI Support" 2de823053SJagan Teki 3da333ae7SMasahiro Yamadaconfig DM_SPI 4da333ae7SMasahiro Yamada bool "Enable Driver Model for SPI drivers" 5da333ae7SMasahiro Yamada depends on DM 6da333ae7SMasahiro Yamada help 7f94a1bedSSimon Glass Enable driver model for SPI. The SPI slave interface 8f94a1bedSSimon Glass (spi_setup_slave(), spi_xfer(), etc.) is then implemented by 9f94a1bedSSimon Glass the SPI uclass. Drivers provide methods to access the SPI 10f94a1bedSSimon Glass buses that they control. The uclass interface is defined in 11f94a1bedSSimon Glass include/spi.h. The existing spi_slave structure is attached 12f94a1bedSSimon Glass as 'parent data' to every slave on each bus. Slaves 13f94a1bedSSimon Glass typically use driver-private data instead of extending the 14f94a1bedSSimon Glass spi_slave structure. 15892cac72SSimon Glass 16e4976af8SJagan Tekiif DM_SPI 17e4976af8SJagan Teki 18e4976af8SJagan Tekiconfig CADENCE_QSPI 19e4976af8SJagan Teki bool "Cadence QSPI driver" 20e4976af8SJagan Teki help 21e4976af8SJagan Teki Enable the Cadence Quad-SPI (QSPI) driver. This driver can be 22e4976af8SJagan Teki used to access the SPI NOR flash on platforms embedding this 23e4976af8SJagan Teki Cadence IP core. 24e4976af8SJagan Teki 25e4976af8SJagan Tekiconfig DESIGNWARE_SPI 26e4976af8SJagan Teki bool "Designware SPI driver" 27e4976af8SJagan Teki help 28e4976af8SJagan Teki Enable the Designware SPI driver. This driver can be used to 29e4976af8SJagan Teki access the SPI NOR flash on platforms embedding this Designware 30e4976af8SJagan Teki IP core. 31e4976af8SJagan Teki 32*c354eee8SJagan Tekiconfig EXYNOS_SPI 33*c354eee8SJagan Teki bool "Samsung Exynos SPI driver" 34*c354eee8SJagan Teki help 35*c354eee8SJagan Teki Enable the Samsung Exynos SPI driver. This driver can be used to 36*c354eee8SJagan Teki access the SPI NOR flash on platforms embedding this Samsung 37*c354eee8SJagan Teki Exynos IP core. 38*c354eee8SJagan Teki 3994ea308dSJagan Tekiconfig FSL_DSPI 4094ea308dSJagan Teki bool "Freescale DSPI driver" 4194ea308dSJagan Teki help 4294ea308dSJagan Teki Enable the Freescale DSPI driver. This driver can be used to 4394ea308dSJagan Teki access the SPI NOR flash and SPI Data flash on platforms embedding 4494ea308dSJagan Teki this Freescale DSPI IP core. LS102xA and Colibri VF50/VF61 platforms 4594ea308dSJagan Teki use this driver. 4694ea308dSJagan Teki 4791c22d04SJagan Tekiconfig FSL_QSPI 4891c22d04SJagan Teki bool "Freescale QSPI driver" 4991c22d04SJagan Teki help 5091c22d04SJagan Teki Enable the Freescale Quad-SPI (QSPI) driver. This driver can be 5191c22d04SJagan Teki used to access the SPI NOR flash on platforms embedding this 5291c22d04SJagan Teki Freescale IP core. 5391c22d04SJagan Teki 54892cac72SSimon Glassconfig SANDBOX_SPI 55892cac72SSimon Glass bool "Sandbox SPI driver" 56892cac72SSimon Glass depends on SANDBOX && DM 57892cac72SSimon Glass help 58892cac72SSimon Glass Enable SPI support for sandbox. This is an emulation of a real SPI 59892cac72SSimon Glass bus. Devices can be attached to the bus using the device tree 60892cac72SSimon Glass which specifies the driver to use. As an example, see this device 61892cac72SSimon Glass tree fragment from sandbox.dts. It shows that the SPI bus has a 62892cac72SSimon Glass single flash device on chip select 0 which is emulated by the driver 63892cac72SSimon Glass for "sandbox,spi-flash", which is in drivers/mtd/spi/sandbox.c. 64892cac72SSimon Glass 65892cac72SSimon Glass spi@0 { 66892cac72SSimon Glass #address-cells = <1>; 67892cac72SSimon Glass #size-cells = <0>; 68892cac72SSimon Glass reg = <0>; 69892cac72SSimon Glass compatible = "sandbox,spi"; 70892cac72SSimon Glass cs-gpios = <0>, <&gpio_a 0>; 71892cac72SSimon Glass flash@0 { 72892cac72SSimon Glass reg = <0>; 73892cac72SSimon Glass compatible = "spansion,m25p16", "sandbox,spi-flash"; 74892cac72SSimon Glass spi-max-frequency = <40000000>; 75892cac72SSimon Glass sandbox,filename = "spi.bin"; 76892cac72SSimon Glass }; 77892cac72SSimon Glass }; 7867d7a9d6SMarek Vasut 79075143d3SJagan Tekiconfig XILINX_SPI 80075143d3SJagan Teki bool "Xilinx SPI driver" 81075143d3SJagan Teki help 82075143d3SJagan Teki Enable the Xilinx SPI driver from the Xilinx EDK. This SPI 83075143d3SJagan Teki controller support 8 bit SPI transfers only, with or w/o FIFO. 84075143d3SJagan Teki For more info on Xilinx SPI Register Definitions and Overview 85075143d3SJagan Teki see driver file - drivers/spi/xilinx_spi.c 86075143d3SJagan Teki 87df30a425SJagan Tekiconfig ZYNQ_SPI 88df30a425SJagan Teki bool "Zynq SPI driver" 89e4976af8SJagan Teki depends on ARCH_ZYNQ || TARGET_XILINX_ZYNQMP 90df30a425SJagan Teki help 91df30a425SJagan Teki Enable the Zynq SPI driver. This driver can be used to 92df30a425SJagan Teki access the SPI NOR flash on platforms embedding this Zynq 93df30a425SJagan Teki SPI IP core. 94de823053SJagan Teki 95e4976af8SJagan Tekiendif # if DM_SPI 96e4976af8SJagan Teki 973debffa7SJagan Tekiconfig FSL_ESPI 983debffa7SJagan Teki bool "Freescale eSPI driver" 993debffa7SJagan Teki help 1003debffa7SJagan Teki Enable the Freescale eSPI driver. This driver can be used to 1013debffa7SJagan Teki access the SPI interface and SPI NOR flash on platforms embedding 1023debffa7SJagan Teki this Freescale eSPI IP core. 1033debffa7SJagan Teki 104e4976af8SJagan Tekiconfig TI_QSPI 105e4976af8SJagan Teki bool "TI QSPI driver" 106e4976af8SJagan Teki help 107e4976af8SJagan Teki Enable the TI Quad-SPI (QSPI) driver for DRA7xx and AM43xx evms. 108e4976af8SJagan Teki This driver support spi flash single, quad and memory reads. 109e4976af8SJagan Teki 110de823053SJagan Tekiendmenu # menu "SPI Support" 111