SDK_TS_VERSION >= 300の時はMCU互換機能を外すようにした

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@743 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yutaka 2008-02-26 06:11:19 +00:00
parent 9d655b885c
commit 72aa2161ee
4 changed files with 112 additions and 40 deletions

View File

@ -86,6 +86,15 @@ static void CreateIdleThread(void)
OS_WakeupThreadDirect(&idleThread); OS_WakeupThreadDirect(&idleThread);
} }
// MCU旧バージョン対策
#if SDK_TS_VERSION <= 200
static u8 version = 0;
#define IS_OLD_MCU (version ? (version < 0x20) : ((version=MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR )) < 0x20))
#else
#define IS_OLD_MCU FALSE
#define MCU_OLD_REG_TEMP_ADDR MCU_REG_TEMP_ADDR // avoid compiler error
#endif
/*************************************************************** /***************************************************************
PreInit PreInit
@ -97,6 +106,8 @@ static void PreInit(void)
/* /*
*/ */
if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -105,6 +116,7 @@ static void PreInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
/* /*
FromBrom関連 FromBrom関連
*/ */
@ -116,10 +128,14 @@ static void PreInit(void)
(1)(1) (1)(1)
*/ */
#define HOTSTART_FLAG_ENABLE 0x80 #define HOTSTART_FLAG_ENABLE 0x80
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( IS_OLD_MCU ) // MCU旧バージョン対策
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); {
else
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); *(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
else
{
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
} }
/*************************************************************** /***************************************************************
@ -138,6 +154,8 @@ static void PostInit(void)
/* /*
*/ */
if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -146,6 +164,7 @@ static void PostInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
} }
/*************************************************************** /***************************************************************

View File

@ -86,6 +86,15 @@ static void CreateIdleThread(void)
OS_WakeupThreadDirect(&idleThread); OS_WakeupThreadDirect(&idleThread);
} }
// MCU旧バージョン対策
#if SDK_TS_VERSION <= 200
static u8 version = 0;
#define IS_OLD_MCU (version ? (version < 0x20) : ((version=MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR )) < 0x20))
#else
#define IS_OLD_MCU FALSE
#define MCU_OLD_REG_TEMP_ADDR MCU_REG_TEMP_ADDR // avoid compiler error
#endif
/*************************************************************** /***************************************************************
PreInit PreInit
@ -97,7 +106,8 @@ static void PreInit(void)
/* /*
*/ */
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -106,6 +116,7 @@ static void PreInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
/* /*
FromBrom関連 FromBrom関連
*/ */
@ -117,10 +128,14 @@ static void PreInit(void)
(1)(1) (1)(1)
*/ */
#define HOTSTART_FLAG_ENABLE 0x80 #define HOTSTART_FLAG_ENABLE 0x80
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( IS_OLD_MCU ) // MCU旧バージョン対策
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); {
else
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); *(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
else
{
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
} }
/*************************************************************** /***************************************************************
@ -139,7 +154,8 @@ static void PostInit(void)
/* /*
*/ */
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -148,6 +164,7 @@ static void PostInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
} }
/*************************************************************** /***************************************************************

View File

@ -87,6 +87,15 @@ static void CreateIdleThread(void)
OS_WakeupThreadDirect(&idleThread); OS_WakeupThreadDirect(&idleThread);
} }
// MCU旧バージョン対策
#if SDK_TS_VERSION <= 200
static u8 version = 0;
#define IS_OLD_MCU (version ? (version < 0x20) : ((version=MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR )) < 0x20))
#else
#define IS_OLD_MCU FALSE
#define MCU_OLD_REG_TEMP_ADDR MCU_REG_TEMP_ADDR // avoid compiler error
#endif
/*************************************************************** /***************************************************************
PreInit PreInit
@ -98,7 +107,8 @@ static void PreInit(void)
/* /*
*/ */
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -107,6 +117,7 @@ static void PreInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
/* /*
FromBrom関連 FromBrom関連
*/ */
@ -118,10 +129,14 @@ static void PreInit(void)
(1)(1) (1)(1)
*/ */
#define HOTSTART_FLAG_ENABLE 0x80 #define HOTSTART_FLAG_ENABLE 0x80
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( IS_OLD_MCU ) // MCU旧バージョン対策
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); {
else
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); *(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
else
{
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
} }
/*************************************************************** /***************************************************************
@ -140,7 +155,8 @@ static void PostInit(void)
/* /*
*/ */
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -149,6 +165,7 @@ static void PostInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
} }
/*************************************************************** /***************************************************************

View File

@ -86,6 +86,15 @@ static void CreateIdleThread(void)
OS_WakeupThreadDirect(&idleThread); OS_WakeupThreadDirect(&idleThread);
} }
// MCU旧バージョン対策
#if SDK_TS_VERSION <= 200
static u8 version = 0;
#define IS_OLD_MCU (version ? (version < 0x20) : ((version=MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR )) < 0x20))
#else
#define IS_OLD_MCU FALSE
#define MCU_OLD_REG_TEMP_ADDR MCU_REG_TEMP_ADDR // avoid compiler error
#endif
/*************************************************************** /***************************************************************
PreInit PreInit
@ -97,6 +106,8 @@ static void PreInit(void)
/* /*
*/ */
if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -105,6 +116,7 @@ static void PreInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
/* /*
FromBrom関連 FromBrom関連
*/ */
@ -116,10 +128,14 @@ static void PreInit(void)
(1)(1) (1)(1)
*/ */
#define HOTSTART_FLAG_ENABLE 0x80 #define HOTSTART_FLAG_ENABLE 0x80
if ( MCUi_ReadRegister( MCU_REG_VER_INFO_ADDR ) >= 0x20 ) // MCU旧バージョン対策 if ( IS_OLD_MCU ) // MCU旧バージョン対策
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); {
else
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE); *(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_OLD_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
else
{
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
}
} }
/*************************************************************** /***************************************************************
@ -138,6 +154,8 @@ static void PostInit(void)
/* /*
*/ */
if ( !IS_OLD_MCU ) // MCU旧バージョン対策
{
if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 )
{ {
#ifndef SDK_FINALROM #ifndef SDK_FINALROM
@ -146,6 +164,7 @@ static void PostInit(void)
PM_Shutdown(); PM_Shutdown();
#endif #endif
} }
}
} }
/*************************************************************** /***************************************************************