aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc/host/mmc_spi.c
diff options
context:
space:
mode:
authorJames Morris <jmorris@namei.org>2009-07-14 00:30:40 +1000
committerJames Morris <jmorris@namei.org>2009-07-14 00:30:40 +1000
commit7d45ecafb6792ca68da9517969d37d910601845f (patch)
treea98b1074e5577e66a97963745f975404d0aac266 /drivers/mmc/host/mmc_spi.c
parentbe940d6279c30a2d7c4e8d1d5435f957f594d66d (diff)
parent7638d5322bd89d49e013a03fe2afaeb6d214fabd (diff)
Merge branch 'master' into next
Conflicts: include/linux/personality.h Use Linus' version. Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'drivers/mmc/host/mmc_spi.c')
-rw-r--r--drivers/mmc/host/mmc_spi.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c
index 240608cc7ae..a461017ce5c 100644
--- a/drivers/mmc/host/mmc_spi.c
+++ b/drivers/mmc/host/mmc_spi.c
@@ -1313,6 +1313,12 @@ static int mmc_spi_probe(struct spi_device *spi)
struct mmc_spi_host *host;
int status;
+ /* We rely on full duplex transfers, mostly to reduce
+ * per-transfer overheads (by making fewer transfers).
+ */
+ if (spi->master->flags & SPI_MASTER_HALF_DUPLEX)
+ return -EINVAL;
+
/* MMC and SD specs only seem to care that sampling is on the
* rising edge ... meaning SPI modes 0 or 3. So either SPI mode
* should be legit. We'll use mode 0 since the steady state is 0,