WSL2-Linux-Kernel/include/linux/spi
David Brownell d29389de0b spi_gpio driver
Generalize the old at91rm9200 "bootstrap" bitbanging SPI master driver as
"spi_gpio", so it works with arbitrary GPIOs and can be configured through
platform_data.  Such SPI masters support:

 - any number of bus instances (bus_num is the platform_device.id)
 - any number of chipselects (one GPIO per spi_device)
 - all four SPI_MODE values, and SPI_CS_HIGH
 - i/o word sizes from 1 to 32 bits;
 - devices configured as with any other spi_master controller

When configured using platform_data, this provides relatively low clock
rates.  On platforms that support inlined GPIO calls, significantly
improved transfer speeds are also possible with a semi-custom driver.
(It's still painful when accessing flash memory, but less so.)

Sanity checked by using this version to replace both native controllers on
a board with six different SPI slaves, relying on three different
SPI_MODE_* values and both SPI_CS_HIGH settings for correct operation.

[akpm@linux-foundation.org: cleanups]
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Magnus Damm <damm@igel.co.jp>
Tested-by: Magnus Damm <damm@igel.co.jp>
Cc: Torgil Svensson <torgil.svensson@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-01-06 15:59:19 -08:00
..
Kbuild
ad7877.h
ads7846.h Input: ads7846 - introduce .gpio_pendown to get pendown state 2008-09-17 17:33:37 +01:00
at73c213.h [ALSA] ALSA sound driver for the AT73C213 DAC using Atmel SSC driver 2007-10-16 15:57:50 +02:00
corgi_lcd.h [ARM] corgi_lcd: use GPIO API for BACKLIGHT_ON and BACKLIGHT_CONT 2008-09-25 09:38:14 +01:00
ds1305.h rtc: ds1305/ds1306 driver 2008-07-24 10:47:33 -07:00
eeprom.h
flash.h
max7301.h gpio: gpio driver for max7301 SPI GPIO expander 2008-07-22 09:59:40 -07:00
mcp23s08.h gpio: mcp23s08 handles multiple chips per chipselect 2008-07-25 10:53:30 -07:00
mmc_spi.h mmc_spi: Add support for OpenFirmware bindings 2008-12-31 19:01:55 +01:00
orion_spi.h orion_spi: handle 88F6183 erratum 2008-10-16 11:21:38 -07:00
spi.h spi.h uses/needs device.h 2009-01-04 13:33:20 -08:00
spi_bitbang.h spi: fix compile error 2008-10-30 11:38:47 -07:00
spi_gpio.h spi_gpio driver 2009-01-06 15:59:19 -08:00
spidev.h
tle62x0.h