From 36943ad2eb2b1b15f50c7d42fff087c4c3613056 Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@b08762b0-b915-fc4b-9d8c-17b2551a87ff> Date: Tue, 24 Jun 2008 11:59:52 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=BB=E3=82=AB=E3=83=BC=E3=83=89=E8=AA=AD?= =?UTF-8?q?=E3=81=BF=E6=9C=80=E4=B8=AD=E3=81=AB=E3=82=A8=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E3=81=8C=E3=81=82=E3=81=A3=E3=81=9F=E5=A0=B4=E5=90=88=E3=80=81?= =?UTF-8?q?=EF=BC=93=E5=9B=9E=E3=81=BE=E3=81=A7=E3=82=AB=E3=83=BC=E3=83=89?= =?UTF-8?q?=E8=AA=AD=E3=81=BF=E3=82=92=E3=83=AA=E3=83=88=E3=83=A9=E3=82=A4?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E3=80=82=20=E3=83=BBchattering=20counter=E3=81=AE=E5=80=A4?= =?UTF-8?q?=E3=82=920x1988(100ms)=E3=81=AB=E4=BF=AE=E6=AD=A3=E3=80=82=20?= =?UTF-8?q?=E3=83=BBcounter-A=E3=81=AE=E5=80=A4=E3=82=920x264c(150ms)?= =?UTF-8?q?=E3=81=AB=E8=A8=AD=E5=AE=9A=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1679 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../hotsw/ARM7/include/hotswTypes.h | 2 ++ .../libraries_sysmenu/hotsw/ARM7/src/hotsw.c | 19 ++++++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/build/libraries_sysmenu/hotsw/ARM7/include/hotswTypes.h b/build/libraries_sysmenu/hotsw/ARM7/include/hotswTypes.h index e2e8483c..ea7748ae 100644 --- a/build/libraries_sysmenu/hotsw/ARM7/include/hotswTypes.h +++ b/build/libraries_sysmenu/hotsw/ARM7/include/hotswTypes.h @@ -270,6 +270,8 @@ typedef union BootSegmentData // カードブート時に必要な変数一式をまとめた構造体 typedef struct CardBootData{ + u8 retry; + u32 vae; u32 vbi; u32 vd; diff --git a/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c b/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c index 1f5095d1..935d25d1 100644 --- a/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c +++ b/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c @@ -31,10 +31,15 @@ //#define HOWSW_ENABLE_DEEP_SLEEP_WHILE_INSERT_CARD // define ------------------------------------------------------------------- -#define CHATTERING_COUNTER 0x264c // 150ms分 (0x264C * 15.3us = 150001us) -#define COUNTER_A 0x1988 // 100ms分 (0x1988 * 15.3us = 100000us) +#define CHATTERING_COUNTER 0x1988 // 100ms分 (0x1988 * 15.3us = 100000us) +//#define CHATTERING_COUNTER 0x264c // 150ms分 (0x264c * 15.3us = 150001us) +//#define CHATTERING_COUNTER 0x3310 // 200ms分 (0x3310 * 15.3us = 200001us) +//#define CHATTERING_COUNTER 0x4c98 // 300ms分 (0x4c98 * 15.3us = 300002us) + +#define COUNTER_A 0x264c // 150ms分 (0x264c * 15.3us = 150001us) #define CARD_EXIST_CHECK_INTERVAL 100 +#define CARD_READ_RETRY_NUM 3 // リードミス時のリトライ回数 #define UNDEF_CODE 0xe7ffdeff // 未定義コード #define ENCRYPT_DEF_SIZE 0x800 // 2KB ※ ARM9常駐モジュール先頭2KB @@ -1625,7 +1630,15 @@ static void HotSwThread(void *arg) ClearCardFlgs(); McPowerOff(); - break; + // リトライ + if(s_cbData.retry >= CARD_READ_RETRY_NUM){ + break; + } + else{ + s_isPulledOut = TRUE; + } + + s_cbData.retry++; } }