Commit d23c6c21 authored by Harald Welte's avatar Harald Welte Committed by Linus Torvalds

[PATCH] spi_s3c2410_gpio.c spi mode 2 and 3 support

Add transfer modes 2 and 3 to the S3C24XX gpio SPI driver
Signed-off-by: default avatarHarald Welte <laforge@openmoko.org>
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent bb2d1c36
...@@ -73,6 +73,19 @@ static u32 s3c2410_spigpio_txrx_mode1(struct spi_device *spi, ...@@ -73,6 +73,19 @@ static u32 s3c2410_spigpio_txrx_mode1(struct spi_device *spi,
return bitbang_txrx_be_cpha1(spi, nsecs, 0, word, bits); return bitbang_txrx_be_cpha1(spi, nsecs, 0, word, bits);
} }
static u32 s3c2410_spigpio_txrx_mode2(struct spi_device *spi,
unsigned nsecs, u32 word, u8 bits)
{
return bitbang_txrx_be_cpha0(spi, nsecs, 1, word, bits);
}
static u32 s3c2410_spigpio_txrx_mode3(struct spi_device *spi,
unsigned nsecs, u32 word, u8 bits)
{
return bitbang_txrx_be_cpha1(spi, nsecs, 1, word, bits);
}
static void s3c2410_spigpio_chipselect(struct spi_device *dev, int value) static void s3c2410_spigpio_chipselect(struct spi_device *dev, int value)
{ {
struct s3c2410_spigpio *sg = spidev_to_sg(dev); struct s3c2410_spigpio *sg = spidev_to_sg(dev);
...@@ -108,6 +121,8 @@ static int s3c2410_spigpio_probe(struct platform_device *dev) ...@@ -108,6 +121,8 @@ static int s3c2410_spigpio_probe(struct platform_device *dev)
sp->bitbang.txrx_word[SPI_MODE_0] = s3c2410_spigpio_txrx_mode0; sp->bitbang.txrx_word[SPI_MODE_0] = s3c2410_spigpio_txrx_mode0;
sp->bitbang.txrx_word[SPI_MODE_1] = s3c2410_spigpio_txrx_mode1; sp->bitbang.txrx_word[SPI_MODE_1] = s3c2410_spigpio_txrx_mode1;
sp->bitbang.txrx_word[SPI_MODE_2] = s3c2410_spigpio_txrx_mode2;
sp->bitbang.txrx_word[SPI_MODE_3] = s3c2410_spigpio_txrx_mode3;
/* set state of spi pins */ /* set state of spi pins */
s3c2410_gpio_setpin(sp->info->pin_clk, 0); s3c2410_gpio_setpin(sp->info->pin_clk, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment