git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlToolsRED@35 7061adef-622a-194b-ae81-725974e89856

This commit is contained in:
miya 2008-10-27 09:35:13 +00:00
parent db944d7135
commit 74ed622476
25 changed files with 92 additions and 12 deletions

View File

@ -40,7 +40,7 @@ ES_ROOT = $(ES_LATEST)
LINCLUDES = $(TWLSDK_ROOT)/build/libraries/lcfg/ARM9.TWL/include ../common/src \
$(ES_ROOT)/twl/include $(ES_ROOT)/common/lib/ec/include
LLIBRARY_DIRS += $(ES_ROOT)/twl/lib/$(TWL_BUILDTYPE) ../wifilib
LLIBRARY_DIRS += $(ES_ROOT)/twl/lib/$(TWL_BUILDTYPE) ../wifilib/$(TWL_BUILDTYPE)
# LLIBRARY_DIRS += $(ES_ROOT)/twl/lib/$(TWL_BUILDTYPE)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 630 B

After

Width:  |  Height:  |  Size: 630 B

View File

@ -27,6 +27,9 @@
#ifdef SDK_RELEASE
#define ECDL_LOG(msg) OS_TPrintf("ECDL-LOG: %s\n", msg);
#endif
#ifdef SDK_FINALROM
#define ECDL_LOG(msg) OS_TPrintf("ECDL-LOG: %s\n", msg);
#endif

View File

@ -47,10 +47,13 @@
//================================================================================
#define MIYA_MCU 1
static BOOL completed_flag = FALSE;
static FSEventHook sSDHook;
static BOOL sd_card_flag = FALSE;
static BOOL reboot_flag = FALSE;
//static BOOL reboot_flag = FALSE;
static volatile BOOL reboot_flag;
static u8 WorkForNA[NA_VERSION_DATA_WORK_SIZE];
@ -569,6 +572,7 @@ static void MyThreadProc(void *arg)
(void)OS_SendMessage(&MyMesgQueue_response, (OSMessage)0, OS_MESSAGE_NOBLOCK);
(void)OS_ReceiveMessage(&MyMesgQueue_request, &message, OS_MESSAGE_BLOCK);
flag = TRUE;
twl_card_validation_flag = TRUE;
/* MydataLoadはすでにやっているのでいらない。 */
for( function_counter = 0 ; function_counter < function_table_max ; function_counter++ ) {
if( FALSE == (function_table[function_counter])() ) {
@ -705,6 +709,27 @@ static BOOL myTWLCardCallback( void )
return FALSE; // means that not terminate.
}
#ifdef MIYA_MCU
static volatile u8 miya_mcu_free_register = 0x44;
static void miya_mcu_free_reg_pxi_callback(PXIFifoTag tag, u32 data, BOOL err)
{
#pragma unused(tag)
#pragma unused(err)
miya_mcu_free_register = (u8)(0xff & data);
}
static void miya_mcu_free_reg_send_pxi_data(u32 data)
{
while (PXI_SendWordByFifo(PXI_FIFO_TAG_USER_0, data, FALSE) != PXI_FIFO_SUCCESS)
{
// do nothing
}
}
#endif
void TwlMain(void)
{
void* newArenaLo;
@ -726,6 +751,7 @@ void TwlMain(void)
BOOL MydataLoadDecrypt_dir_flag = TRUE;
BOOL MydataLoadDecrypt_success_flag = TRUE;
OS_Init();
OS_InitThread();
@ -771,6 +797,20 @@ void TwlMain(void)
SEA_Init();
reboot_flag = OS_IsRebooted();
/* OS_IsRebootedなんかおかしい・・ */
#ifdef MIYA_MCU
PXI_SetFifoRecvCallback(PXI_FIFO_TAG_USER_0, miya_mcu_free_reg_pxi_callback);
miya_mcu_free_reg_send_pxi_data( 0 );
if( miya_mcu_free_register == 0x55 ) {
reboot_flag = TRUE;
}
else {
reboot_flag = FALSE;
}
#endif
/* デバッグのために今だけ強制的にオン(UPDATE mode) */
/* miya */
// reboot_flag = TRUE;
@ -785,8 +825,8 @@ void TwlMain(void)
else {
sd_card_flag = TRUE;
}
FS_RegisterEventHook("sdmc", &sSDHook, SDEvents, NULL);
FS_RegisterEventHook("sdmc", &sSDHook, SDEvents, NULL);
if( FALSE == Read_SystemMenuVersion(&s_major, &s_minor, &s_timestamp) ) {
m_set_palette(tc[0], M_TEXT_COLOR_RED );
@ -800,6 +840,7 @@ void TwlMain(void)
ES_InitLib();
if( FALSE == MiyaReadHWNormalInfo( &hwn_info ) ) {
m_set_palette(tc[0], 0x1); /* red */
mprintf("HW Normal Info. read error.\n");
@ -839,17 +880,28 @@ void TwlMain(void)
OS_TPrintf("DeviceID: %s\n", mydata.bmsDeviceId);
}
// mprintf("mcu reg 0x%02X\n", miya_mcu_free_register );
#ifdef MIYA_MCU
if( miya_mcu_free_register == 0x55 ) {
reboot_flag = TRUE;
}
else {
reboot_flag = FALSE;
}
#endif
#if 1
(void)m_get_key_trigger();
keyData = m_get_key_code();
if ( keyData & PAD_BUTTON_X ) {
reboot_flag = TRUE;
}
#endif
if( FALSE == reboot_flag ) {
mprintf("Network update mode\n");
/* 最初はネットワークアップデート。 */
// NSSL_Init(&s_sslConfig);
@ -875,14 +927,9 @@ void TwlMain(void)
init_my_thread_nuc();
#if 0 /* 自動スタートはいらない */
if( sd_card_flag == TRUE ) {
start_my_thread();
}
#endif
if( sd_card_flag == TRUE ) {
text_blink_current_line(tc[0]);
/* 自動スタートはいらない */
mprintf("press A button to start UPDATE\n\n");
}
else {
@ -892,7 +939,8 @@ void TwlMain(void)
}
else {
// 不要NAM の初期化
mprintf("user data restore mode\n");
// NAM の初期化
NAM_Init(&AllocForNAM, &FreeForNAM);
/* 書き戻し過程 */

View File

@ -39,7 +39,7 @@ ES_ROOT = $(ES_LATEST)
LINCLUDES = $(TWLSDK_ROOT)/build/libraries/lcfg/ARM9.TWL/include ../common/src \
$(ES_ROOT)/twl/include $(ES_ROOT)/common/lib/ec/include
LLIBRARY_DIRS += $(ES_ROOT)/twl/lib/$(TWL_BUILDTYPE) ../wifilib
LLIBRARY_DIRS += $(ES_ROOT)/twl/lib/$(TWL_BUILDTYPE) ../wifilib/$(TWL_BUILDTYPE)
LLIBRARIES += libecx$(TWL_LIBSUFFIX).a \

Binary file not shown.

Before

Width:  |  Height:  |  Size: 630 B

After

Width:  |  Height:  |  Size: 630 B

View File

@ -80,6 +80,27 @@ static s32 CheckCorrectNCD(NVRAMConfig* ncdsp);
#endif
static void VBlankIntr(void);
#define MIYA_MCU_FREE_REG_NO 1
#define MIYA_MCU_FREE_REG_CODE 0x55
static u8 miya_mcu_free_register = 0x66;
static void miya_mcu_free_reg_send_pxi_data(u32 data)
{
while (PXI_SendWordByFifo(PXI_FIFO_TAG_USER_0, data, FALSE) != PXI_FIFO_SUCCESS) {
// do nothing
}
}
static void miya_mcu_free_reg_pxi_callback(PXIFifoTag tag, u32 data, BOOL err)
{
#pragma unused(tag)
#pragma unused(err)
miya_mcu_free_reg_send_pxi_data( (u32)miya_mcu_free_register );
}
/*---------------------------------------------------------------------------*
Name: TwlSpMain
Description:
@ -130,6 +151,14 @@ TwlSpMain(void)
WVR_Begin(heapHandle); // NITRO 無線
SPI_Init(THREAD_PRIO_SPI);
miya_mcu_free_register = MCU_GetFreeRegister( (u8)MIYA_MCU_FREE_REG_NO );
(void)MCU_SetFreeRegister( (u8)MIYA_MCU_FREE_REG_NO , (u8)MIYA_MCU_FREE_REG_CODE );
PXI_SetFifoRecvCallback(PXI_FIFO_TAG_USER_0, miya_mcu_free_reg_pxi_callback);
while (TRUE)
{
OS_Halt();