製品CPUとTWLモードの起動に制限を掛けるビルドスイッチ追加(デフォルトOFF)。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@574 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
nakasima 2008-02-05 01:42:48 +00:00
parent bb77df96df
commit a249ffcc10
3 changed files with 25 additions and 4 deletions

View File

@ -18,6 +18,9 @@
ifndef TWL_SYSMENU_COMMONDEFS_
TWL_SYSMENU_COMMONDEFS_ = TRUE
#SYSMENU_DISABLE_TWL_BOOT = TRUE
#SYSMENU_DISABLE_RETAIL_BOOT = TRUE
NITRO_NO_STD_PCHDR = TRUE # プリコンパイルヘッダ抑止
EMPTY ?=
@ -111,6 +114,16 @@ SYSMENU_INSTALL_LIBDIR := $(SYSMENU_INSTALL_ROOT)/lib/$(TWL_LIBTYPE)
SYSMENU_INSTALL_COMPONENTSDIR := $(SYSMENU_INSTALL_ROOT)/components
SDK_NMENU_DATADIR = $(ROOT)/build/tools/TwlNMenu/data
#----------------------------------------------------------------------------
ifdef SYSMENU_DISABLE_TWL_BOOT
MACRO_FLAGS += -DSYSMENU_DISABLE_TWL_BOOT=$(SYSMENU_DISABLE_TWL_BOOT)
endif
ifdef SYSMENU_DISABLE_RETAIL_BOOT
MACRO_FLAGS += -DSYSMENU_DISABLE_RETAIL_BOOT=$(SYSMENU_DISABLE_RETAIL_BOOT)
endif
#----------------------------------------------------------------------------
endif # TWL_SYSMENU_COMMONDEFS_
#----- End of commondefs -----

View File

@ -177,6 +177,11 @@ BOOL BOOT_WaitStart( void )
if ( dh->s.platform_code )
{
// target = REBOOT_TARGET_TWL_APP;
#ifdef SYSMENU_DISABLE_TWL_BOOT
while (1)
{
}
#endif // SYSMENU_DISABLE_TWL_BOOT
}
else
{
@ -199,13 +204,13 @@ BOOL BOOT_WaitStart( void )
REG_SND_SMX_CNT_E_MASK;
}
#ifdef FIRM_USE_TWLSDK_KEYS
#if defined(FIRM_USE_TWLSDK_KEYS) || defined(SYSMENU_DISABLE_RETAIL_BOOT)
// TwlSDK内の鍵を使っている時は製品用CPUではTWLアプリはブートしない
if ( ! (*(u8*)HWi_WSYS08_ADDR & HWi_WSYS08_OP_OPT_MASK) && !ds )
{
OS_Terminate();
}
#endif // FIRM_USE_SDK_KEYS
#endif // FIRM_USE_SDK_KEYS || SYSMENU_DISABLE_RETAIL_BOOT
// リブート
OS_Boot( dh->s.sub_entry_address, mem_list, target );

View File

@ -127,6 +127,9 @@ void BOOT_Ready( void )
if ( dh->s.platform_code )
{
// target = REBOOT_TARGET_TWL_APP;
#ifdef SYSMENU_DISABLE_TWL_BOOT
OS_Terminate();
#endif // SYSMENU_DISABLE_TWL_BOOT
}
else
{
@ -138,13 +141,13 @@ void BOOT_Ready( void )
ds = TRUE;
}
#ifdef FIRM_USE_TWLSDK_KEYS
#if defined(FIRM_USE_TWLSDK_KEYS) || defined(SYSMENU_DISABLE_RETAIL_BOOT)
// TwlSDK内の鍵を使っている時は製品用CPUではTWLアプリはブートしない
if ( ! (*(u8*)OS_CHIPTYPE_DEBUGGER_ADDR & OS_CHIPTYPE_DEBUGGER_MASK) && !ds )
{
OS_Terminate();
}
#endif // FIRM_USE_SDK_KEYS
#endif // FIRM_USE_SDK_KEYS || SYSMENU_DISABLE_RETAIL_BOOT
// 起動するターゲットの種類を指定する必要あり
OS_Boot( dh->s.main_entry_address, mem_list, target );