後処理、システムメニュー確認の内部関数追加(中身はない)

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@44 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yutaka 2007-10-10 11:05:35 +00:00
parent 21f1b03fb3
commit 9489eeb559
2 changed files with 62 additions and 13 deletions

View File

@ -54,13 +54,12 @@ u32 profile[PRFILE_MAX];
u32 pf_cnt = 0; u32 pf_cnt = 0;
#endif #endif
/* /***************************************************************
PreInit PreInit
FromBootの対応をまとめる FromBootの対応をまとめる
OS_Init前なので注意 (ARM9によるメインメモリ初期化で消されないように注意) OS_Init前なので注意 (ARM9によるメインメモリ初期化で消されないように注意)
*/ ***************************************************************/
static void PreInit(void) static void PreInit(void)
{ {
@ -77,6 +76,20 @@ static void PreInit(void)
MIi_CpuClearFast( 0, (void*)OSi_GetFromBromAddr(), sizeof(OSFromBromBuf) ); MIi_CpuClearFast( 0, (void*)OSi_GetFromBromAddr(), sizeof(OSFromBromBuf) );
} }
/***************************************************************
EraseAll
DSモードにして終わるのがよいか
***************************************************************/
static void EraseAll(void)
{
#ifdef SDK_FINALROM
// TODO
#endif
}
void TwlSpMain( void ) void TwlSpMain( void )
{ {
// OS_InitDebugLED and OS_SetDebugLED are able to call after OS_Init // OS_InitDebugLED and OS_SetDebugLED are able to call after OS_Init
@ -211,11 +224,14 @@ void TwlSpMain( void )
} }
} }
// failed
PXI_NotifyID( FIRM_PXI_ID_NULL );
OS_SetDebugLED( (u8)(0xF0 | step)); OS_SetDebugLED( (u8)(0xF0 | step));
OS_Terminate(); EraseAll();
// failed
while (1)
{
PXI_NotifyID( FIRM_PXI_ID_NULL );
}
} }

View File

@ -51,13 +51,12 @@ u32 profile[PRFILE_MAX];
u32 pf_cnt = 0; u32 pf_cnt = 0;
#endif #endif
/* /***************************************************************
PreInit PreInit
FromBootの対応をまとめる FromBootの対応をまとめる
OS_Init前なので注意 OS_Init前なので注意
*/ ***************************************************************/
static void PreInit(void) static void PreInit(void)
{ {
/* /*
@ -80,6 +79,34 @@ static void PreInit(void)
MIi_CpuClearFast( 0, (void*)OSi_GetFromBromAddr(), sizeof(OSFromBromBuf) ); MIi_CpuClearFast( 0, (void*)OSi_GetFromBromAddr(), sizeof(OSFromBromBuf) );
} }
/***************************************************************
CheckHeader
32Bは固定値と思われ ()
***************************************************************/
static BOOL CheckHeader(void)
{
#ifdef BOOT_SECURE_SRL
// TODO
#endif
return TRUE;
}
/***************************************************************
EraseAll
DSモードにして終わるのがよいか
***************************************************************/
static void EraseAll(void)
{
#ifdef SDK_FINALROM
// TODO
#endif
}
void TwlMain( void ) void TwlMain( void )
{ {
PreInit(); PreInit();
@ -99,7 +126,7 @@ void TwlMain( void )
SVC_InitSignHeap( acPool, acHeap, sizeof(acHeap) ); SVC_InitSignHeap( acPool, acHeap, sizeof(acHeap) );
// load menu // load menu
if ( MI_LoadHeader( acPool, RSA_KEY_ADDR ) && MI_LoadMenu() ) if ( MI_LoadHeader( acPool, RSA_KEY_ADDR ) && CheckHeader() && MI_LoadMenu() )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
// 127: before BootMenu // 127: before BootMenu
@ -110,6 +137,12 @@ void TwlMain( void )
MI_BootMenu(); MI_BootMenu();
} }
OS_Terminate(); EraseAll();
// failed
while (1)
{
PXI_NotifyID( FIRM_PXI_ID_NULL );
}
} }