(更新:Akabane Jumpei)

・活線挿抜処理中、isBusyHotSWフラグを立てるように修正。
・isBusyHotSWフラグを取得するAPIを追加

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1767 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
(no author) 2008-07-03 10:36:09 +00:00
parent a0e40a29bb
commit 00ab7bcff2
3 changed files with 13 additions and 3 deletions

View File

@ -1552,6 +1552,8 @@ static void HotSwThread(void *arg)
while(1){ while(1){
OS_ReceiveMessage(&HotSwThreadData.hotswQueue, (OSMessage *)&msg, OS_MESSAGE_BLOCK); OS_ReceiveMessage(&HotSwThreadData.hotswQueue, (OSMessage *)&msg, OS_MESSAGE_BLOCK);
SYSMi_GetWork()->flags.hotsw.isBusyHotSW = TRUE;
if( msg->ctrl == TRUE ) { if( msg->ctrl == TRUE ) {
SYSMi_GetWork()->flags.hotsw.isEnableHotSW = msg->value; SYSMi_GetWork()->flags.hotsw.isEnableHotSW = msg->value;
s_pollingThreadSleepFlg = msg->value ? FALSE : TRUE; s_pollingThreadSleepFlg = msg->value ? FALSE : TRUE;
@ -1580,6 +1582,9 @@ static void HotSwThread(void *arg)
ReadCardData(SYSMi_GetWork()->cardReadParam.src, ReadCardData(SYSMi_GetWork()->cardReadParam.src,
SYSMi_GetWork()->cardReadParam.dest, SYSMi_GetWork()->cardReadParam.dest,
SYSMi_GetWork()->cardReadParam.size); SYSMi_GetWork()->cardReadParam.size);
SYSMi_GetWork()->flags.hotsw.isBusyHotSW = FALSE;
continue; continue;
} }
@ -1652,8 +1657,10 @@ static void HotSwThread(void *arg)
break; break;
} }
} } // Card Read while loop
SYSMi_GetWork()->flags.hotsw.is1stCardChecked = TRUE; SYSMi_GetWork()->flags.hotsw.is1stCardChecked = TRUE;
SYSMi_GetWork()->flags.hotsw.isBusyHotSW = FALSE;
} // while loop } // while loop
} }

View File

@ -25,6 +25,9 @@ extern "C" {
#define SYSM_HOTSW_ENABLE_ROMEMU #define SYSM_HOTSW_ENABLE_ROMEMU
#define USE_WRAM_LOAD #define USE_WRAM_LOAD
#define HOTSW_isBusyHotSw() SYSMi_GetWork()->flags.hotsw.isBusyHotSW
//#define USE_NEW_DMA //#define USE_NEW_DMA
// enum ------------------------------------------------------------------- // enum -------------------------------------------------------------------

View File

@ -116,7 +116,6 @@ typedef struct SYSM_work {
vu16 isInspectCard :1; // 検査カードか? vu16 isInspectCard :1; // 検査カードか?
vu16 isOnDebugger :1; // デバッガ動作か? vu16 isOnDebugger :1; // デバッガ動作か?
vu16 isEnableHotSW :1; // 活線挿抜有効? vu16 isEnableHotSW :1; // 活線挿抜有効?
vu16 isBusyHotSW :1; // Š<><C5A0>ü}”˛Ź<CB9B>—ť<E28099>H
vu16 isLoadRomEmuOnly :1; // ROMエミュレーション情報のみロード vu16 isLoadRomEmuOnly :1; // ROMエミュレーション情報のみロード
vu16 isCardLoadCompleted :1; // カードからデータロード完了? vu16 isCardLoadCompleted :1; // カードからデータロード完了?
vu16 isValidCardBanner :1; // バナーデータ更新? vu16 isValidCardBanner :1; // バナーデータ更新?
@ -125,8 +124,9 @@ typedef struct SYSM_work {
vu16 isFinalized :1; // HOTSW終了処理完了 vu16 isFinalized :1; // HOTSW終了処理完了
vu16 :0; vu16 :0;
vu8 isCardStateChanged; // カード状態更新フラグ vu8 isCardStateChanged; // カード状態更新フラグ
vu8 isBusyHotSW; // Š<><C5A0>ü}”˛Ź<CB9B>—ť<E28099>H
}hotsw; }hotsw;
}flags; // 7B }flags; // 8B
u16 cardHeaderCrc16; // カード検出時に算出したROMヘッダCRC16ARM9側でコピーして使用する側 u16 cardHeaderCrc16; // カード検出時に算出したROMヘッダCRC16ARM9側でコピーして使用する側
u16 cardHeaderCrc16_bak; // カード検出時に算出したROMヘッダCRC16ARM7側ライブラリでダイレクトに書き換わる側 u16 cardHeaderCrc16_bak; // カード検出時に算出したROMヘッダCRC16ARM7側ライブラリでダイレクトに書き換わる側