X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fspi%2Fspi_s3c24xx.c;h=e9b683f7d7b3bc7f77d0e3e55b611cf09b0f96ea;hb=fe2dc44eac1223a0e92859242f58fd2a58a6f8fa;hp=d5a710f6e445cf3aa0bf64e1fb1c6f5f827f50eb;hpb=972d45fb43f0f0793fa275c4a22998106760cd61;p=linux-2.6 diff --git a/drivers/spi/spi_s3c24xx.c b/drivers/spi/spi_s3c24xx.c index d5a710f6e4..e9b683f7d7 100644 --- a/drivers/spi/spi_s3c24xx.c +++ b/drivers/spi/spi_s3c24xx.c @@ -28,7 +28,7 @@ #include #include -#include +#include #include struct s3c24xx_spi { @@ -146,6 +146,9 @@ static int s3c24xx_spi_setupxfer(struct spi_device *spi, return 0; } +/* the spi->mode bits understood by this driver: */ +#define MODEBITS (SPI_CPOL | SPI_CPHA | SPI_CS_HIGH) + static int s3c24xx_spi_setup(struct spi_device *spi) { int ret; @@ -153,8 +156,11 @@ static int s3c24xx_spi_setup(struct spi_device *spi) if (!spi->bits_per_word) spi->bits_per_word = 8; - if ((spi->mode & SPI_LSB_FIRST) != 0) + if (spi->mode & ~MODEBITS) { + dev_dbg(&spi->dev, "setup: unsupported mode bits %x\n", + spi->mode & ~MODEBITS); return -EINVAL; + } ret = s3c24xx_spi_setupxfer(spi, NULL); if (ret < 0) { @@ -421,6 +427,7 @@ static int s3c24xx_spi_resume(struct platform_device *pdev) #define s3c24xx_spi_resume NULL #endif +MODULE_ALIAS("s3c2410_spi"); /* for platform bus hotplug */ static struct platform_driver s3c24xx_spidrv = { .probe = s3c24xx_spi_probe, .remove = s3c24xx_spi_remove,