diff options
author | Magnus Damm <damm@opensource.se> | 2009-11-26 06:10:05 -0500 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2009-12-13 02:48:27 -0500 |
commit | 8051effcbced8478119167b93b0e9554cb82d28e (patch) | |
tree | 03ce88851ca697c8ed5f1d8eadcb32972342dbac /drivers/spi/Kconfig | |
parent | 41df70d9ac2d0d36b23a0ec4866f67e540f366ff (diff) |
spi: SuperH MSIOF SPI Master driver V2
This patch is V2 of SPI Master support for the SuperH MSIOF.
Full duplex, spi mode 0-3, active high cs, 3-wire and lsb
first should all be supported, but the driver has so far
only been tested with "mmc_spi".
The MSIOF hardware comes with 32-bit FIFOs for receive and
transmit, and this driver simply breaks the SPI messages
into FIFO-sized chunks. The MSIOF hardware manages the pins
for clock, receive and transmit (sck/miso/mosi), but the chip
select pin is managed by software and must be configured as
a regular GPIO pin by the board code.
Performance wise there is still room for improvement, but
on a Ecovec board with the built-in sh7724 MSIOF0 this driver
gets Mini-sd read speeds of about half a megabyte per second.
Future work include better clock setup and merging of 8-bit
transfers into 32-bit words to reduce interrupt load and
improve throughput.
Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers/spi/Kconfig')
-rw-r--r-- | drivers/spi/Kconfig | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig index c00f9e5b9df8..06e1c0c9d35e 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig | |||
@@ -223,6 +223,13 @@ config SPI_S3C24XX_GPIO | |||
223 | the inbuilt hardware cannot provide the transfer mode, or | 223 | the inbuilt hardware cannot provide the transfer mode, or |
224 | where the board is using non hardware connected pins. | 224 | where the board is using non hardware connected pins. |
225 | 225 | ||
226 | config SPI_SH_MSIOF | ||
227 | tristate "SuperH MSIOF SPI controller" | ||
228 | depends on SUPERH && HAVE_CLK | ||
229 | select SPI_BITBANG | ||
230 | help | ||
231 | SPI driver for SuperH MSIOF blocks. | ||
232 | |||
226 | config SPI_SH_SCI | 233 | config SPI_SH_SCI |
227 | tristate "SuperH SCI SPI controller" | 234 | tristate "SuperH SCI SPI controller" |
228 | depends on SUPERH | 235 | depends on SUPERH |