mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
カードスロットのロック/アンロックを関数内にまとめる。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@709 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
300862b2d7
commit
f41ae31da4
@ -280,7 +280,6 @@ static HotSwState LoadCardData(void)
|
|||||||
|
|
||||||
// カード電源リセット
|
// カード電源リセット
|
||||||
#ifdef SDK_ARM7
|
#ifdef SDK_ARM7
|
||||||
// [TODO:] リセットしている間はカードをロックする
|
|
||||||
McPowerOff();
|
McPowerOff();
|
||||||
McPowerOn();
|
McPowerOn();
|
||||||
#else // SDK_ARM9
|
#else // SDK_ARM9
|
||||||
@ -385,7 +384,7 @@ static HotSwState LoadCardData(void)
|
|||||||
retval = s_funcTable[s_cbData.cardType].ChangeMode_N(&s_cbData);
|
retval = s_funcTable[s_cbData.cardType].ChangeMode_N(&s_cbData);
|
||||||
|
|
||||||
if(retval != HOTSW_SUCCESS){
|
if(retval != HOTSW_SUCCESS){
|
||||||
return retval;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------------- Secure Mode ----------------------
|
// ---------------------- Secure Mode ----------------------
|
||||||
@ -400,7 +399,8 @@ static HotSwState LoadCardData(void)
|
|||||||
|
|
||||||
// カードIDの比較をして、一致しなければFALSEを返す
|
// カードIDの比較をして、一致しなければFALSEを返す
|
||||||
if(s_cbData.id_nml != s_cbData.id_scr){
|
if(s_cbData.id_nml != s_cbData.id_scr){
|
||||||
return HOTSW_ID_CHECK_ERROR;
|
retval = HOTSW_ID_CHECK_ERROR;
|
||||||
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Secure領域のSegment読み込み
|
// Secure領域のSegment読み込み
|
||||||
@ -410,7 +410,7 @@ static HotSwState LoadCardData(void)
|
|||||||
retval = s_funcTable[s_cbData.cardType].ChangeMode_S(&s_cbData);
|
retval = s_funcTable[s_cbData.cardType].ChangeMode_S(&s_cbData);
|
||||||
|
|
||||||
if(retval != HOTSW_SUCCESS){
|
if(retval != HOTSW_SUCCESS){
|
||||||
return retval;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------------- Game Mode ----------------------
|
// ---------------------- Game Mode ----------------------
|
||||||
@ -419,7 +419,8 @@ static HotSwState LoadCardData(void)
|
|||||||
|
|
||||||
// カードIDの比較をして、一致しなければFALSEを返す
|
// カードIDの比較をして、一致しなければFALSEを返す
|
||||||
if(s_cbData.id_scr != s_cbData.id_gam){
|
if(s_cbData.id_scr != s_cbData.id_gam){
|
||||||
return HOTSW_ID_CHECK_ERROR;
|
retval = HOTSW_ID_CHECK_ERROR;
|
||||||
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 常駐モジュール残りを指定先に転送
|
// 常駐モジュール残りを指定先に転送
|
||||||
@ -436,6 +437,10 @@ static HotSwState LoadCardData(void)
|
|||||||
retval = HOTSW_PULLED_OUT_ERROR;
|
retval = HOTSW_PULLED_OUT_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
goto end;
|
||||||
|
error:
|
||||||
|
OS_TPrintf("ng... retval : %d\n", retval);
|
||||||
|
end:
|
||||||
// カードのロック開放
|
// カードのロック開放
|
||||||
#ifndef DEBUG_USED_CARD_SLOT_B_
|
#ifndef DEBUG_USED_CARD_SLOT_B_
|
||||||
CARD_UnlockRom(s_cbData.lockID);
|
CARD_UnlockRom(s_cbData.lockID);
|
||||||
@ -1124,19 +1129,6 @@ static void McThread(void *arg)
|
|||||||
|
|
||||||
// 状態フラグを更新
|
// 状態フラグを更新
|
||||||
isPulledOut = (retval == HOTSW_SUCCESS) ? FALSE : TRUE;
|
isPulledOut = (retval == HOTSW_SUCCESS) ? FALSE : TRUE;
|
||||||
|
|
||||||
// カード読み込み失敗してたら、後処理する
|
|
||||||
if(retval != HOTSW_SUCCESS){
|
|
||||||
OS_TPrintf("ng... retval : %d\n", retval);
|
|
||||||
// カードロックの開放
|
|
||||||
#ifndef DEBUG_USED_CARD_SLOT_B_
|
|
||||||
CARD_UnlockRom(s_cbData.lockID);
|
|
||||||
#else
|
|
||||||
UnlockExCard(s_cbData.lockID);
|
|
||||||
#endif
|
|
||||||
// カードロックIDの開放
|
|
||||||
OS_ReleaseLockID( s_cbData.lockID );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// カードが抜けてたら
|
// カードが抜けてたら
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user