mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
[PATCH] SPI: Freescale iMX SPI controller driver (BIS+)
Add the SPI controller driver for Freescale i.MX(S/L/1). Main features summary: > Per chip setup via board specific code and/or protocol driver. > Per transfer setup. > PIO transfers. > DMA transfers. > Managing of NULL tx / rx buffer for rd only / wr only transfers. This patch replace patch-2.6.20-rc4-spi_imx with the following changes: > Few cosmetic changes. > Function map_dma_buffers now return 0 for success and -1 for failure. > Solved a bug inside spi_imx_probe function (wrong error path). > Solved a bug inside setup function (bad undo setup for max_speed_hz). > For read-only transfers, always write zero bytes. This is almost the same as the 'BIS' version sent by Andrea, except for updating the 'DUMMY' byte so that read-only transfers shift out zeroes. That part of the API changed recently, since some half duplex peripheral chips require that semantic. Signed-off-by: Andrea Paterniani <[email protected]> Signed-off-by: David Brownell <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
fdb3c18d63
commit
69c202afa8
4 changed files with 1850 additions and 0 deletions
|
|
@ -75,6 +75,13 @@ config SPI_BUTTERFLY
|
|||
inexpensive battery powered microcontroller evaluation board.
|
||||
This same cable can be used to flash new firmware.
|
||||
|
||||
config SPI_IMX
|
||||
tristate "Freescale iMX SPI controller"
|
||||
depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL
|
||||
help
|
||||
This enables using the Freescale iMX SPI controller in master
|
||||
mode.
|
||||
|
||||
config SPI_MPC83xx
|
||||
tristate "Freescale MPC83xx SPI controller"
|
||||
depends on SPI_MASTER && PPC_83xx && EXPERIMENTAL
|
||||
|
|
@ -94,6 +101,7 @@ config SPI_OMAP_UWIRE
|
|||
help
|
||||
This hooks up to the MicroWire controller on OMAP1 chips.
|
||||
|
||||
|
||||
config SPI_PXA2XX
|
||||
tristate "PXA2xx SSP SPI master"
|
||||
depends on SPI_MASTER && ARCH_PXA && EXPERIMENTAL
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ obj-$(CONFIG_SPI_MASTER) += spi.o
|
|||
# SPI master controller drivers (bus)
|
||||
obj-$(CONFIG_SPI_BITBANG) += spi_bitbang.o
|
||||
obj-$(CONFIG_SPI_BUTTERFLY) += spi_butterfly.o
|
||||
obj-$(CONFIG_SPI_IMX) += spi_imx.o
|
||||
obj-$(CONFIG_SPI_PXA2XX) += pxa2xx_spi.o
|
||||
obj-$(CONFIG_SPI_OMAP_UWIRE) += omap_uwire.o
|
||||
obj-$(CONFIG_SPI_MPC83xx) += spi_mpc83xx.o
|
||||
|
|
|
|||
1769
drivers/spi/spi_imx.c
Normal file
1769
drivers/spi/spi_imx.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue