From e74daf29734cfa51516c736fd5ae127b88766802 Mon Sep 17 00:00:00 2001 From: Michael Sparmann Date: Fri, 9 Oct 2009 18:54:48 +0000 Subject: Reduce iPod Nano 2G NAND timeouts to a sane value (20ms) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23054 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c b/firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c index 91d8827b50..302ffdee21 100644 --- a/firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c +++ b/firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c @@ -128,7 +128,7 @@ uint32_t nand_timeout(long timeout) uint32_t nand_wait_rbbdone(void) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; while ((FMCSTAT & FMCSTAT_RBBDONE) == 0) if (nand_timeout(timeout)) return 1; FMCSTAT = FMCSTAT_RBBDONE; @@ -137,7 +137,7 @@ uint32_t nand_wait_rbbdone(void) uint32_t nand_wait_cmddone(void) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; while ((FMCSTAT & FMCSTAT_CMDDONE) == 0) if (nand_timeout(timeout)) return 1; FMCSTAT = FMCSTAT_CMDDONE; @@ -146,7 +146,7 @@ uint32_t nand_wait_cmddone(void) uint32_t nand_wait_addrdone(void) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; while ((FMCSTAT & FMCSTAT_ADDRDONE) == 0) if (nand_timeout(timeout)) return 1; FMCSTAT = FMCSTAT_ADDRDONE; @@ -155,7 +155,7 @@ uint32_t nand_wait_addrdone(void) uint32_t nand_wait_chip_ready(uint32_t bank) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; while ((FMCSTAT & (FMCSTAT_BANK0READY << bank)) == 0) if (nand_timeout(timeout)) return 1; FMCSTAT = (FMCSTAT_BANK0READY << bank); @@ -194,7 +194,7 @@ uint32_t nand_reset(uint32_t bank) uint32_t nand_wait_status_ready(uint32_t bank) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; nand_set_fmctrl0(bank, 0); if ((FMCSTAT & (FMCSTAT_BANK0READY << bank)) != 0) FMCSTAT = (FMCSTAT_BANK0READY << bank); @@ -216,7 +216,7 @@ uint32_t nand_wait_status_ready(uint32_t bank) uint32_t nand_transfer_data(uint32_t bank, uint32_t direction, void* buffer, uint32_t size) { - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; nand_set_fmctrl0(bank, FMCTRL0_ENABLEDMA); FMDNUM = size - 1; FMCTRL1 = FMCTRL1_DOREADDATA << direction; @@ -239,7 +239,7 @@ uint32_t nand_transfer_data(uint32_t bank, uint32_t direction, uint32_t ecc_decode(uint32_t size, void* databuffer, void* sparebuffer) { mutex_lock(&ecc_mtx); - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; ECC_INT_CLR = 1; SRCPND = INTMSK_ECC; ECC_UNK1 = size; @@ -256,7 +256,7 @@ uint32_t ecc_decode(uint32_t size, void* databuffer, void* sparebuffer) uint32_t ecc_encode(uint32_t size, void* databuffer, void* sparebuffer) { mutex_lock(&ecc_mtx); - long timeout = current_tick + HZ / 1; + long timeout = current_tick + HZ / 50; ECC_INT_CLR = 1; SRCPND = INTMSK_ECC; ECC_UNK1 = size; -- cgit v1.2.3