From 3d9d0f482914a52f92c0bc7f978734a7fb3ae951 Mon Sep 17 00:00:00 2001 From: shirait Date: Tue, 26 Jun 2007 07:19:23 +0000 Subject: [PATCH] SD init clock optimization git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@134 4ee2a332-4b2b-5046-8439-1ba90f034370 --- build/libraries/devices/sdmc/ARM7/sdmc.c | 11 ++--------- include/twl/devices/sdmc/ARM7/sdmc.h | 4 ++-- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/build/libraries/devices/sdmc/ARM7/sdmc.c b/build/libraries/devices/sdmc/ARM7/sdmc.c index ed46dbe..35753c9 100644 --- a/build/libraries/devices/sdmc/ARM7/sdmc.c +++ b/build/libraries/devices/sdmc/ARM7/sdmc.c @@ -304,13 +304,6 @@ static void SDCARD_Backup_port1(void) static void i_sdmcEnable( void) { #if (TARGET_OS_CTR == 1) -#if (CTR_DEF_ENVIRONMENT_DSEMU == 1) - u16 ctrdg_reg; - - ctrdg_reg = (*(vu16*)REG_EXMEMCNT_ADDR) & (0xFF00); /* ブレッドボード設定 */ - *(vu16*)REG_EXMEMCNT_ADDR = (ctrdg_reg | 0); //ARM9優先、PHIにLo出力、1st:10,2nd:6サイクル -#endif - /*SD interrupt setting*/ // osInitIntrFlag(); // osClearInterruptPendingID( OS_INTR_ID_SD); @@ -625,7 +618,7 @@ SDMC_ERR_CODE sdmcReset( void) #else irq_core_flag = OS_DisableInterrupts(); /* 割込み禁止 */ #endif - *SDIF_CNT_L = 0x0402; //ラッパーレジスタ + *SDIF_CNT_L = (SDIF_CNT_FCLR | SDIF_CNT_USEFIFO); //ラッパーレジスタ *SDIF_CNT_L = 0x0000; //ラッパーレジスタ *SDIF_FDS_L = 0; *SDIF_FSC_L = 1; @@ -675,7 +668,7 @@ static SDMC_ERR_CODE SDCARD_Layer_Init(void) // init_io_exist = 0; // init_mem_exist = 0; - SD_SetFPGA(SD_CLK_CTRL,(SD_CLK_CTRL_256)); /* SDクロックの周波数 144KHz */ + SD_SetFPGA(SD_CLK_CTRL,(SD_CLK_CTRL_128)); /* SDクロックの周波数 261KHz(初期化時は100〜400khz) */ SD_EnableClock(); /* SDカードのクロックをイネーブルにする */ /* SD I/F部ダミー80クロック(1mSec)転送待ち(タイマーで待ちを実装しても良い) */ diff --git a/include/twl/devices/sdmc/ARM7/sdmc.h b/include/twl/devices/sdmc/ARM7/sdmc.h index 2d813b6..217051a 100644 --- a/include/twl/devices/sdmc/ARM7/sdmc.h +++ b/include/twl/devices/sdmc/ARM7/sdmc.h @@ -86,8 +86,8 @@ typedef struct u16 SD_CLK_CTRL_VALUE; u16 SD_OPTION_VALUE; - s16 OutFlag; - u16 port_no; + s16 OutFlag; + u16 port_no; } SDPortContext;