diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2010-03-18 16:40:21 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2010-03-18 16:40:21 +0000 |
commit | 004317a863233e0ba15532981cb5fb4e9bff4428 (patch) | |
tree | cd3a96a33af137acd8b76287570dce566cc6181c /firmware | |
parent | 016153a0b91040bde338e1d32e5e86bab6ce55ec (diff) | |
download | rockbox-004317a863233e0ba15532981cb5fb4e9bff4428.tar.gz rockbox-004317a863233e0ba15532981cb5fb4e9bff4428.zip |
sd-as3525v2: correctly check send_cmd return value (which is boolean)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25246 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/target/arm/as3525/sd-as3525v2.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/firmware/target/arm/as3525/sd-as3525v2.c b/firmware/target/arm/as3525/sd-as3525v2.c index 992db4d307..a440fb57ff 100644 --- a/firmware/target/arm/as3525/sd-as3525v2.c +++ b/firmware/target/arm/as3525/sd-as3525v2.c | |||
@@ -790,14 +790,12 @@ static int sd_transfer_sectors(IF_MD2(int drive,) unsigned long start, | |||
790 | MCI_FIFOTH |= 0x503f0080; | 790 | MCI_FIFOTH |= 0x503f0080; |
791 | 791 | ||
792 | 792 | ||
793 | if(card_info[drive].ocr & (1<<30) ) /* SDHC */ | 793 | int arg = start; |
794 | ret = send_cmd(drive, cmd, start, MCI_NO_RESP, NULL); | 794 | if(!(card_info[drive].ocr & (1<<30))) /* not SDHC */ |
795 | else | 795 | arg *= SD_BLOCK_SIZE; |
796 | ret = send_cmd(drive, cmd, start * SD_BLOCK_SIZE, | ||
797 | MCI_NO_RESP, NULL); | ||
798 | 796 | ||
799 | if (ret < 0) | 797 | if(!send_cmd(drive, cmd, arg, MCI_NO_RESP, NULL)) |
800 | panicf("transfer multiple blocks failed (%d)", ret); | 798 | panicf("%s multiple blocks failed", write ? "write" : "read"); |
801 | 799 | ||
802 | if(write) | 800 | if(write) |
803 | dma_enable_channel(0, dma_buf, MCI_FIFO, DMA_PERI_SD, | 801 | dma_enable_channel(0, dma_buf, MCI_FIFO, DMA_PERI_SD, |