···383 struct mmc_blk_data *md;384 int err;385386- if (card->csd.cmdclass & ~0x1ff)000387 return -ENODEV;388389 if (card->csd.read_blkbits < 9) {
···383 struct mmc_blk_data *md;384 int err;385386+ /*387+ * Check that the card supports the command class(es) we need.388+ */389+ if (!(card->csd.cmdclass & CCC_BLOCK_READ))390 return -ENODEV;391392 if (card->csd.read_blkbits < 9) {
+27
include/linux/mmc/protocol.h
···195#define MMC_VDD_35_36 0x00800000 /* VDD voltage 3.5 ~ 3.6 */196#define MMC_CARD_BUSY 0x80000000 /* Card Power up status bit */197000000000000000000000000000198199/*200 * CSD field definitions