diff options
author | Marc Pignat <marc.pignat@hevs.ch> | 2007-08-09 07:56:29 -0400 |
---|---|---|
committer | Pierre Ossman <drzeus@drzeus.cx> | 2007-09-23 13:29:34 -0400 |
commit | 1d4de9edd6c9ad676b20729ab15c04b78e9a50c5 (patch) | |
tree | 9a55b7cc98723bced21a27a8a33fc01cb389c038 /drivers/mmc/host | |
parent | 8fdd8521dcc9d89072f3ca5dca444560bcea39c6 (diff) |
mmc: at91_mci: disable handling of blocks with size not multiple of 4 bytes
This kind of transfer is not supported, so don't advertise it and make it
fail early.
Signed-off-by: Marc Pignat <marc.pignat@hevs.ch>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r-- | drivers/mmc/host/at91_mci.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/mmc/host/at91_mci.c b/drivers/mmc/host/at91_mci.c index 8ec317802347..6ba98a49612d 100644 --- a/drivers/mmc/host/at91_mci.c +++ b/drivers/mmc/host/at91_mci.c | |||
@@ -428,6 +428,14 @@ static void at91_mci_send_command(struct at91mci_host *host, struct mmc_command | |||
428 | } | 428 | } |
429 | 429 | ||
430 | if (data) { | 430 | if (data) { |
431 | |||
432 | if ( data->blksz & 0x3 ) { | ||
433 | pr_debug("Unsupported block size\n"); | ||
434 | cmd->error = -EINVAL; | ||
435 | mmc_request_done(host->mmc, host->request); | ||
436 | return; | ||
437 | } | ||
438 | |||
431 | block_length = data->blksz; | 439 | block_length = data->blksz; |
432 | blocks = data->blocks; | 440 | blocks = data->blocks; |
433 | 441 | ||