From 26638b93f7479dc597a58e2e2b2832c6ff4c8f7b Mon Sep 17 00:00:00 2001 From: Cliff Brake Date: Fri, 20 Jul 2007 19:02:55 -0400 Subject: [PATCH] mmcsd_large_cards-r0 --- drivers/mmc/card/block.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c index 540ff4b..1f8d67d 100644 --- a/drivers/mmc/card/block.c +++ b/drivers/mmc/card/block.c @@ -403,6 +403,7 @@ static struct mmc_blk_data *mmc_blk_alloc(struct mmc_card *card) { struct mmc_blk_data *md; int devidx, ret; + unsigned long cap; devidx = find_first_zero_bit(dev_use, MMC_NUM_MINORS); if (devidx >= MMC_NUM_MINORS) @@ -467,6 +468,11 @@ static struct mmc_blk_data *mmc_blk_alloc(struct mmc_card *card) sprintf(md->disk->disk_name, "mmcblk%d", devidx); + if (card->csd.read_blkbits > 9) + md->block_bits = 9; + else + md->block_bits = card->csd.read_blkbits; + blk_queue_hardsect_size(md->queue.queue, 1 << md->block_bits); if (!mmc_card_sd(card) && mmc_card_blockaddr(card)) { -- 1.5.1.6