mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
無線フライトモードフラグ制御および無線LED制御を追加。(とりあえずコメントアウト)
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1086 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
a3c534841b
commit
df513bea4c
@ -106,10 +106,10 @@ void BOOT_Ready( void )
|
||||
}
|
||||
|
||||
// NTRモード起動でない場合は、LCFG関連データをメモリに展開
|
||||
if( !isNtrMode ) {
|
||||
/* if( !isNtrMode ) {
|
||||
BOOTi_CopyLCFGData();
|
||||
}
|
||||
|
||||
*/
|
||||
// WRAMの配置
|
||||
{
|
||||
MIHeader_WramRegs *pWRAMREGS = (MIHeader_WramRegs *)th->s.main_wram_config_data;
|
||||
@ -207,7 +207,7 @@ static void BOOTi_ClearREG_RAM( void )
|
||||
// レジスタクリアは基本的に OS_Boot で行う
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
// LCFG関連データをメインメモリ先頭の予約領域にコピーする
|
||||
static void BOOTi_CopyLCFGData( void )
|
||||
{
|
||||
@ -223,4 +223,4 @@ static void BOOTi_CopyLCFGData( void )
|
||||
MI_CpuClearFast( &pSettings->parental, sizeof(LCFGTWLParentalControl) );
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
@ -45,7 +45,7 @@ static u8 s_brightness;
|
||||
// 輝度取得で呼ぶSYSM_ReadMcuRegisterAsyncのコールバック
|
||||
static OSThreadQueue s_callback_queue;
|
||||
static SYSMMcuResult s_callback_result;
|
||||
static void BackLightBlightnessCallBack( SYSMMcuResult result, void *arg )
|
||||
static void MCUCallBack( SYSMMcuResult result, void *arg )
|
||||
{
|
||||
#pragma unused(arg)
|
||||
s_callback_result = result;
|
||||
@ -69,7 +69,7 @@ u8 SYSM_GetBackLightBlightness( void )
|
||||
while( 1 )
|
||||
{
|
||||
// BUSYだと失敗するので成功するまでトライ
|
||||
if ( MCU_RESULT_SUCCESS == SYSM_ReadMcuRegisterAsync( MCU_REG_BL_ADDR, &brightness, BackLightBlightnessCallBack, NULL ) )
|
||||
if ( MCU_RESULT_SUCCESS == SYSM_ReadMcuRegisterAsync( MCU_REG_BL_ADDR, &brightness, MCUCallBack, NULL ) )
|
||||
{
|
||||
OS_SleepThread( &s_callback_queue ); // 値が返ってくるまでスリープ
|
||||
break;
|
||||
@ -110,6 +110,34 @@ void SYSM_SetBackLightBrightness( u8 brightness )
|
||||
}
|
||||
|
||||
|
||||
// ワイヤレスLEDの制御
|
||||
void SYSMi_SetWirelessLED( BOOL enable )
|
||||
{
|
||||
u8 value;
|
||||
// X3以降
|
||||
while( 1 )
|
||||
{
|
||||
// BUSYだと失敗するので成功するまでトライ
|
||||
if ( MCU_RESULT_SUCCESS == SYSM_ReadMcuRegisterAsync( MCU_REG_WIFI_ADDR, &value, MCUCallBack, NULL ) )
|
||||
{
|
||||
OS_SleepThread( &s_callback_queue ); // 値が返ってくるまでスリープ
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
value = (u8)( ( value & ~MCU_REG_WIFI_LED_MASK ) | ( enable ? MCU_REG_WIFI_LED_MASK : 0 ) );
|
||||
|
||||
while( 1 )
|
||||
{
|
||||
// BUSYだと失敗するので成功するまでトライ
|
||||
if ( MCU_RESULT_SUCCESS == SYSM_WriteMcuRegisterAsync( MCU_REG_WIFI_ADDR, value, NULL, NULL ) )
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// タッチパネルキャリブレーション
|
||||
void SYSM_CaribrateTP( void )
|
||||
{
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
extern void LCFG_VerifyAndRecoveryNTRSettings( void );
|
||||
|
||||
// function's prototype-------------------------------------------------------
|
||||
static void SYSMi_CopyLCFGData( void );
|
||||
static TitleProperty *SYSMi_CheckDebuggerBannerViewModeBoot( void );
|
||||
static TitleProperty *SYSMi_CheckShortcutBoot1( void );
|
||||
static TitleProperty *SYSMi_CheckShortcutBoot2( void );
|
||||
@ -100,7 +101,7 @@ void SYSM_SetAllocFunc( void *(*pAlloc)(u32), void (*pFree)(void*) )
|
||||
void *SYSM_Alloc( u32 size )
|
||||
{
|
||||
void *p = SYSMi_Alloc( size );
|
||||
OS_TPrintf( "SYSM_Alloc : %08x %xbytes\n", p, size );
|
||||
OS_TPrintf( "SYSM_Alloc : 0x%08x 0x%xbytes\n", p, size );
|
||||
return p;
|
||||
}
|
||||
|
||||
@ -108,7 +109,7 @@ void *SYSM_Alloc( u32 size )
|
||||
// メモリFree
|
||||
void SYSM_Free( void *ptr )
|
||||
{
|
||||
OS_TPrintf( "SYSM_Free : %08x\n", ptr );
|
||||
OS_TPrintf( "SYSM_Free : 0x%08x\n", ptr );
|
||||
SYSMi_Free( ptr );
|
||||
}
|
||||
|
||||
@ -167,7 +168,38 @@ TitleProperty *SYSM_ReadParameters( void )
|
||||
}
|
||||
LCFG_VerifyAndRecoveryNTRSettings(); // NTR設定データを読み出して、TWL設定データとベリファイし、必要ならリカバリ
|
||||
}
|
||||
|
||||
|
||||
//-----------------------------------------------------
|
||||
// システム領域に本体設定などをコピー
|
||||
//-----------------------------------------------------
|
||||
// NTRカードアプリARM9コードのロード領域とメモリがかち合うが、先頭0x4000はセキュア領域で別バッファに格納されるので、
|
||||
// ここでこれらのパラメータをロードしても大丈夫。
|
||||
SYSMi_CopyLCFGData();
|
||||
|
||||
//-----------------------------------------------------
|
||||
// 無線ON/OFFフラグをもとに、LEDを設定する。
|
||||
//-----------------------------------------------------
|
||||
/* {
|
||||
BOOL enable;
|
||||
if( LCFG_THW_IsForceDisableWireless() ) {
|
||||
enable = FALSE;
|
||||
// 本体設定の無線有効フラグがTRUEの時は強制FALSEにしてファイル更新
|
||||
if( LCFG_TSD_IsAvailableWireless() ) {
|
||||
u8 *pBuffer = SYSM_Alloc( LCFG_WRITE_TEMP );
|
||||
if( pBuffer ) {
|
||||
LCFG_TSD_SetFlagAvailableWireless( FALSE );
|
||||
LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ])pBuffer );
|
||||
SYSM_Free( pBuffer );
|
||||
}else {
|
||||
SYSM_SetFatalError( TRUE );
|
||||
}
|
||||
}
|
||||
}else {
|
||||
enable = LCFG_TSD_IsAvailableWireless();
|
||||
}
|
||||
SYSMi_SetWirelessLED( enable );
|
||||
}
|
||||
*/
|
||||
//-----------------------------------------------------
|
||||
// 各種デバイス設定
|
||||
//-----------------------------------------------------
|
||||
@ -262,6 +294,25 @@ TitleProperty *SYSM_ReadParameters( void )
|
||||
return pBootTitle;
|
||||
}
|
||||
|
||||
|
||||
// 本体設定データなどのメモリ展開。
|
||||
static void SYSMi_CopyLCFGData( void )
|
||||
{
|
||||
// 本体設定データ、HWノーマル情報、HWセキュア情報をメモリに展開しておく
|
||||
MI_CpuCopyFast( LCFGi_GetTSD(), (void *)HW_PARAM_TWL_SETTINGS_DATA, sizeof(LCFGTWLSettingsData) );
|
||||
MI_CpuCopyFast( LCFGi_GetHWN(), (void *)HW_PARAM_TWL_HW_NORMAL_INFO, sizeof(LCFGTWLHWNormalInfo) );
|
||||
MI_CpuCopyFast( LCFGi_GetHWS(), (void *)HW_HW_SECURE_INFO, HW_HW_SECURE_INFO_END - HW_HW_SECURE_INFO );
|
||||
|
||||
// 本体設定データの不要部分をクリアしておく
|
||||
{
|
||||
LCFGTWLSettingsData *pSettings = (LCFGTWLSettingsData *)HW_PARAM_TWL_SETTINGS_DATA;
|
||||
MI_CpuClear32( &pSettings->launcherStatus, sizeof(LCFGTWLLauncherStatus) );
|
||||
MI_CpuClearFast( &pSettings->parental, sizeof(LCFGTWLParentalControl) );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
BOOL SYSM_IsLauncherHidden( void )
|
||||
{
|
||||
#ifdef DO_NOT_SHOW_LAUNCHER
|
||||
@ -271,6 +322,7 @@ BOOL SYSM_IsLauncherHidden( void )
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
static TitleProperty *SYSMi_CheckDebuggerBannerViewModeBoot( void )
|
||||
{
|
||||
MI_CpuClear8( &s_bootTitleBuf, sizeof(TitleProperty) );
|
||||
|
||||
@ -57,6 +57,9 @@ void SYSMi_SetBootAppMountInfo( TitleProperty *pBootTitle );
|
||||
// デバイス
|
||||
//-------------------------------------------------------
|
||||
|
||||
// ワイヤレスLED制御
|
||||
void SYSMi_SetWirelessLED( BOOL enable );
|
||||
|
||||
// RTC補正
|
||||
void SYSMi_WriteAdjustRTC( void );
|
||||
|
||||
|
||||
@ -17,11 +17,11 @@
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
SUBDIRS = \
|
||||
# ../../../libraries_sysmenu/sysmenu \
|
||||
../../../libraries_sysmenu/sysmenu \
|
||||
../../../libraries_sysmenu/boot \
|
||||
../../../components/hyena.TWL
|
||||
# ../../../libraries_sysmenu/hotsw \
|
||||
# ../../../components/hyena.TWL
|
||||
# ../../../libraries_sysmenu/reloc_info \
|
||||
# ../../../libraries_sysmenu/boot \
|
||||
# ../../../libraries_sysmenu/mcu \
|
||||
# ../../../libraries_sysmenu/ds \
|
||||
# $(ROOT)/build/libraries/reboot \
|
||||
|
||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user