summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/debug_menu.c3
-rw-r--r--firmware/drivers/ata_mmc.c4
2 files changed, 3 insertions, 4 deletions
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index ab1b60aaac..63630b2ba9 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -1421,8 +1421,7 @@ bool dbg_mmc_info(void)
1421 (int) mmc_extract_bits(card->cid, 0, 8), 1421 (int) mmc_extract_bits(card->cid, 0, 8),
1422 (int) mmc_extract_bits(card->cid, 8, 16)); 1422 (int) mmc_extract_bits(card->cid, 8, 16));
1423 lcd_puts(0, 4, pbuf); 1423 lcd_puts(0, 4, pbuf);
1424 snprintf(pbuf, sizeof(pbuf), "Size: %d MB", 1424 snprintf(pbuf, sizeof(pbuf), "Sectors: %08x", card->numsectors);
1425 card->numsectors * SECTOR_SIZE / (1024*1024));
1426 lcd_puts(0, 5, pbuf); 1425 lcd_puts(0, 5, pbuf);
1427 } 1426 }
1428 else /* Technical details */ 1427 else /* Technical details */
diff --git a/firmware/drivers/ata_mmc.c b/firmware/drivers/ata_mmc.c
index b528bdb1e3..7149e111cd 100644
--- a/firmware/drivers/ata_mmc.c
+++ b/firmware/drivers/ata_mmc.c
@@ -477,8 +477,8 @@ static int initialize_card(int card_no)
477 card->write_timeout = card->read_timeout * card->r2w_factor; 477 card->write_timeout = card->read_timeout * card->r2w_factor;
478 478
479 /* card size */ 479 /* card size */
480 card->numsectors = mmc_extract_bits(card->csd, 54, 12) 480 card->numsectors = (mmc_extract_bits(card->csd, 54, 12) + 1)
481 * (1 << (mmc_extract_bits(card->csd, 78, 3)+2)); 481 * (1 << (mmc_extract_bits(card->csd, 78, 3)+2));
482 482
483 /* switch to full speed */ 483 /* switch to full speed */
484 setup_sci1(card->bitrate_register); 484 setup_sci1(card->bitrate_register);