diff options
Diffstat (limited to 'firmware/target/arm/as3525/ata_sd_as3525.c')
-rw-r--r-- | firmware/target/arm/as3525/ata_sd_as3525.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/firmware/target/arm/as3525/ata_sd_as3525.c b/firmware/target/arm/as3525/ata_sd_as3525.c index b71941adad..edde02b593 100644 --- a/firmware/target/arm/as3525/ata_sd_as3525.c +++ b/firmware/target/arm/as3525/ata_sd_as3525.c | |||
@@ -568,6 +568,8 @@ static int sd_transfer_sectors(IF_MV2(int drive,) unsigned long start, | |||
568 | goto sd_transfer_error; | 568 | goto sd_transfer_error; |
569 | } | 569 | } |
570 | 570 | ||
571 | dma_retain(); | ||
572 | |||
571 | while(count) | 573 | while(count) |
572 | { | 574 | { |
573 | /* 128 * 512 = 2^16, and doesn't fit in the 16 bits of DATA_LENGTH | 575 | /* 128 * 512 = 2^16, and doesn't fit in the 16 bits of DATA_LENGTH |
@@ -628,6 +630,8 @@ static int sd_transfer_sectors(IF_MV2(int drive,) unsigned long start, | |||
628 | 630 | ||
629 | while (1) | 631 | while (1) |
630 | { | 632 | { |
633 | dma_release(); | ||
634 | |||
631 | #ifndef BOOTLOADER | 635 | #ifndef BOOTLOADER |
632 | sd_enable(false); | 636 | sd_enable(false); |
633 | #endif | 637 | #endif |