diff options
author | Pierre Ossman <drzeus-list@cx.rmk.(none)> | 2005-05-21 11:27:02 +0200 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-05-21 11:27:02 +0200 |
commit | 912490db699d83cb3d03570b63df7448677a3f56 (patch) | |
tree | e2e45ad64584dfa9dbff212a2ba3e884b2bbca43 /drivers/mmc | |
parent | Automatic merge of rsync://www.parisc-linux.org/~jejb/git/scsi-for-linus-2.6.git (diff) | |
download | linux-912490db699d83cb3d03570b63df7448677a3f56.tar.xz linux-912490db699d83cb3d03570b63df7448677a3f56.zip |
[PATCH] MMC: Proper MMC command classes support
Defines for the different command classes as defined in the MMC and SD
specifications.
Removes the check for high command classes and instead checks that the
command classes needed are present.
Previous solution killed forward compatibility at no apparent gain.
Signed-of-by: Pierre Ossman
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/mmc_block.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/mmc/mmc_block.c b/drivers/mmc/mmc_block.c index b5b4a7b11903..d4eee99c2bf6 100644 --- a/drivers/mmc/mmc_block.c +++ b/drivers/mmc/mmc_block.c @@ -383,7 +383,10 @@ static int mmc_blk_probe(struct mmc_card *card) struct mmc_blk_data *md; int err; - if (card->csd.cmdclass & ~0x1ff) + /* + * Check that the card supports the command class(es) we need. + */ + if (!(card->csd.cmdclass & CCC_BLOCK_READ)) return -ENODEV; if (card->csd.read_blkbits < 9) { |