From 5c9e76a1e0b1e6017acc6d8503eb12b42b4d0de7 Mon Sep 17 00:00:00 2001 From: Rafaël Carré Date: Sun, 6 Jun 2010 13:47:30 +0000 Subject: sd-as3525v2: check the (supposedly) card data line for business when writing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix panics when deleting large files from µSD Tested on problematic Transcend 4GB Class 6 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26631 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/as3525/sd-as3525v2.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'firmware/target/arm/as3525/sd-as3525v2.c') diff --git a/firmware/target/arm/as3525/sd-as3525v2.c b/firmware/target/arm/as3525/sd-as3525v2.c index 1a555e745d..a668f65e0c 100644 --- a/firmware/target/arm/as3525/sd-as3525v2.c +++ b/firmware/target/arm/as3525/sd-as3525v2.c @@ -878,6 +878,12 @@ static int sd_transfer_sectors(IF_MD2(int drive,) unsigned long start, last_disk_activity = current_tick; + if(write) + { + /* wait for the card to exit programming state */ + while(MCI_STATUS & DATA_BUSY) ; + } + if(!send_cmd(drive, SD_STOP_TRANSMISSION, 0, MCI_NO_RESP, NULL)) { ret = -666; -- cgit v1.2.3