summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
Diffstat (limited to 'firmware')
-rw-r--r--firmware/target/arm/as3525/ata_sd_as3525.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/firmware/target/arm/as3525/ata_sd_as3525.c b/firmware/target/arm/as3525/ata_sd_as3525.c
index 8260c48a30..f6dd8385b1 100644
--- a/firmware/target/arm/as3525/ata_sd_as3525.c
+++ b/firmware/target/arm/as3525/ata_sd_as3525.c
@@ -735,12 +735,8 @@ static int sd_transfer_sectors(IF_MD2(int drive,) unsigned long start,
735 735
736 wakeup_wait(&transfer_completion_signal, TIMEOUT_BLOCK); 736 wakeup_wait(&transfer_completion_signal, TIMEOUT_BLOCK);
737 737
738 /* Higher speed class cards need a write delay here for some reason */ 738 /* Wait for FIFO to empty */
739 if((drive == SD_SLOT_AS3525) && write) 739 while(MCI_STATUS(drive) & (MCI_TX_ACTIVE | MCI_RX_ACTIVE));
740 {
741 int delay = 3500;
742 while(delay--) asm volatile ("nop\n");
743 }
744 740
745 if(!transfer_error[drive]) 741 if(!transfer_error[drive])
746 { 742 {