From 56ce13269bb498268231e7bf4a99ff228287997b Mon Sep 17 00:00:00 2001 From: shirait Date: Tue, 26 Jun 2007 05:00:41 +0000 Subject: [PATCH] modify structure git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@132 4ee2a332-4b2b-5046-8439-1ba90f034370 --- build/libraries/devices/sdmc/ARM7/sdmc.c | 26 +++++++++--------------- include/twl/devices/sdmc/ARM7/sdmc.h | 5 +---- 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/build/libraries/devices/sdmc/ARM7/sdmc.c b/build/libraries/devices/sdmc/ARM7/sdmc.c index c833626..654e386 100644 --- a/build/libraries/devices/sdmc/ARM7/sdmc.c +++ b/build/libraries/devices/sdmc/ARM7/sdmc.c @@ -247,11 +247,7 @@ static void SDCARD_Backup_port0(void) SDPort0Context.SDHCFlag = SDCARD_SDHCFlag; SDPort0Context.SDFlag = SDCARD_SDFlag; - /*TODO:削れる*/ SDPort0Context.OutFlag = SDCARD_OutFlag; - SDPort0Context.info = pSDCARD_info; - SDPort0Context.WP_PERMANENT = SDCARD_WP_PERMANENT; - SDPort0Context.WP_TEMPORARY = SDCARD_WP_TEMPORARY; /*media registers*/ MI_CpuCopy8( SD_CID, SDPort0Context.SD_CID, 16); @@ -284,11 +280,7 @@ static void SDCARD_Backup_port1(void) SDPort1Context.SDHCFlag = SDCARD_SDHCFlag; SDPort1Context.SDFlag = SDCARD_SDFlag; - /*TODO:削れる*/ SDPort1Context.OutFlag = SDCARD_OutFlag; - SDPort1Context.info = pSDCARD_info; - SDPort1Context.WP_PERMANENT = SDCARD_WP_PERMANENT; - SDPort1Context.WP_TEMPORARY = SDCARD_WP_TEMPORARY; /*media registers*/ MI_CpuCopy8( SD_CID, SDPort1Context.SD_CID, 16); @@ -2408,17 +2400,18 @@ static void SDCARD_Restore_port0(void) SDCARD_SDHCFlag = SDPort0Context.SDHCFlag; SDCARD_SDFlag = SDPort0Context.SDFlag; - /*TODO:削れる*/ SDCARD_OutFlag = SDPort0Context.OutFlag; - pSDCARD_info = SDPort0Context.info; - SDCARD_WP_PERMANENT = SDPort0Context.WP_PERMANENT; - SDCARD_WP_TEMPORARY = SDPort0Context.WP_TEMPORARY; + pSDCARD_info = NULL; /*media registers*/ MI_CpuCopy8( SDPort0Context.SD_CID, SD_CID, 16); MI_CpuCopy8( SDPort0Context.SD_CSD, SD_CSD, 16); MI_CpuCopy8( SDPort0Context.SD_OCR, SD_OCR, 4); MI_CpuCopy8( SDPort0Context.SD_SCR, SD_SCR, 8); + + /*recalc*/ + SDCARD_WP_PERMANENT = (u16)(SD_CSD[0] & (u16)(SDCARD_WP_PERMANENT_BIT)); + SDCARD_WP_TEMPORARY = (u16)(SD_CSD[0] & (u16)(SDCARD_WP_TEMPORARY_BIT)); } /*---------------------------------------------------------------------------* @@ -2445,17 +2438,18 @@ static void SDCARD_Restore_port1(void) SDCARD_SDHCFlag = SDPort1Context.SDHCFlag; SDCARD_SDFlag = SDPort1Context.SDFlag; - /*TODO:削れる*/ SDCARD_OutFlag = SDPort1Context.OutFlag; - pSDCARD_info = SDPort1Context.info; - SDCARD_WP_PERMANENT = SDPort1Context.WP_PERMANENT; - SDCARD_WP_TEMPORARY = SDPort1Context.WP_TEMPORARY; + pSDCARD_info = NULL; /*media registers*/ MI_CpuCopy8( SDPort1Context.SD_CID, SD_CID, 16); MI_CpuCopy8( SDPort1Context.SD_CSD, SD_CSD, 16); MI_CpuCopy8( SDPort1Context.SD_OCR, SD_OCR, 4); MI_CpuCopy8( SDPort1Context.SD_SCR, SD_SCR, 8); + + /*recalc*/ + SDCARD_WP_PERMANENT = (u16)(SD_CSD[0] & (u16)(SDCARD_WP_PERMANENT_BIT)); + SDCARD_WP_TEMPORARY = (u16)(SD_CSD[0] & (u16)(SDCARD_WP_TEMPORARY_BIT)); } diff --git a/include/twl/devices/sdmc/ARM7/sdmc.h b/include/twl/devices/sdmc/ARM7/sdmc.h index 303d8c6..2d813b6 100644 --- a/include/twl/devices/sdmc/ARM7/sdmc.h +++ b/include/twl/devices/sdmc/ARM7/sdmc.h @@ -78,7 +78,7 @@ typedef struct u16 SD_OCR[2]; /* OCR保存用 (Operation Condition Register) : voltage and status*/ u16 SD_SCR[4]; /* SCR保存用 (Sd card Configulation Register) : bus-width, card-ver, etc*/ u16 SD_RCA; /* RCA保存用 (Relative Card Address register) : address*/ - s16 MMCFlag; /* SDCARD_MMC_MASK, SDCARD_SD_MASK, SDCARD_SDHC_MASK */ + s16 MMCFlag; s16 SDHCFlag; s16 SDFlag; SDMC_ERR_CODE ErrStatus; /* SDCARD_ErrStatus */ @@ -86,10 +86,7 @@ typedef struct u16 SD_CLK_CTRL_VALUE; u16 SD_OPTION_VALUE; - SdmcResultInfo *info; s16 OutFlag; - u16 WP_PERMANENT; - u16 WP_TEMPORARY; u16 port_no; } SDPortContext;