mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
(NandInitializer) Production用ビルドではFATアクセス前に必ずNANDのフォーマットを行うように修正。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1649 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
4fbcac151f
commit
553d48e178
@ -59,6 +59,7 @@ typedef void (*KAMICallback)(KAMIResult result, void *arg);
|
||||
void KamiPxiInit( void );
|
||||
|
||||
KAMIResult ExeFormatAsync(FormatMode format_mode, KAMICallback callback);
|
||||
KAMIResult ExeFormat(FormatMode format_mode);
|
||||
KAMIResult kamiNandIo(u32 block, void* buffer, u32 count, BOOL is_read);
|
||||
KAMIResult kamiNvramIo(u32 address, void* buffer, u32 size, BOOL is_read);
|
||||
KAMIResult kamiMcuWriteFirm(void* buffer );
|
||||
|
||||
@ -131,6 +131,32 @@ KAMIResult ExeFormatAsync(FormatMode format_mode, KAMICallback callback)
|
||||
return KAMI_RESULT_SUCCESS;
|
||||
}
|
||||
|
||||
KAMIResult ExeFormat(FormatMode format_mode)
|
||||
{
|
||||
OSIntrMode enabled;
|
||||
|
||||
// ƒ<>ƒbƒN
|
||||
enabled = OS_DisableInterrupts();
|
||||
if (kamiWork.lock)
|
||||
{
|
||||
(void)OS_RestoreInterrupts(enabled);
|
||||
return KAMI_RESULT_BUSY;
|
||||
}
|
||||
kamiWork.lock = TRUE;
|
||||
(void)OS_RestoreInterrupts(enabled);
|
||||
|
||||
kamiWork.callback = NULL;
|
||||
kamiWork.arg = 0;
|
||||
kamiWork.data = 0;
|
||||
|
||||
if (KamiSendPxiCommand(KAMI_EXE_FORMAT, 1, format_mode))
|
||||
{
|
||||
KamiWaitBusy();
|
||||
return (KAMIResult)kamiWork.result;
|
||||
}
|
||||
return KAMI_RESULT_SEND_ERROR;
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: NANDアクセス関数
|
||||
|
||||
|
||||
@ -103,9 +103,6 @@ TwlMain()
|
||||
// FS_Initの後の方が良い模様
|
||||
InitAllocation();
|
||||
|
||||
// NAMライブラリ初期化
|
||||
NAM_Init( OS_AllocFromMain, OS_FreeToMain);
|
||||
NAMUT_Init( OS_AllocFromMain, OS_FreeToMain);
|
||||
|
||||
// 表示関連初期化
|
||||
InitGraphics();
|
||||
@ -131,6 +128,16 @@ TwlMain()
|
||||
#endif
|
||||
kamiFontPrintfConsole( CONSOLE_ORANGE, "+---------------------------+\n");
|
||||
|
||||
#ifdef AUTO_FORMAT_MODE
|
||||
// 検査工程ではNANDが初期化されていないがその状態でFATにアクセスすると
|
||||
// 問題があるため強制的にフォーマットを行う
|
||||
ExeFormat(FORMAT_MODE_QUICK);
|
||||
#endif
|
||||
|
||||
// NAMライブラリ初期化
|
||||
NAM_Init( OS_AllocFromMain, OS_FreeToMain);
|
||||
NAMUT_Init( OS_AllocFromMain, OS_FreeToMain);
|
||||
|
||||
// HWInfo関連の前準備
|
||||
switch (HWI_Init( OS_AllocFromMain, OS_FreeToMain ))
|
||||
{
|
||||
@ -148,6 +155,7 @@ TwlMain()
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
while (1)
|
||||
{
|
||||
kamiPadRead();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user