mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
PMIC_FINAL対応
リセットパラメータの取得API変更 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@594 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
baa7816299
commit
fe0f97666b
@ -113,7 +113,7 @@ static void PreInit(void)
|
||||
リセットパラメータ(1バイト)を共有領域(1バイト)にコピー
|
||||
*/
|
||||
#define HOTSTART_FLAG_ENABLE 0x80
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCU_GetFreeRegister( OS_MCU_RESET_VALUE_OFS ) | HOTSTART_FLAG_ENABLE);
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
|
||||
}
|
||||
|
||||
/***************************************************************
|
||||
@ -185,8 +185,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x84
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
SDNandContext = &OSi_GetFromFirmAddr()->SDNandContext;
|
||||
if ( !FATFS_Init( DMA_FATFS_1, DMA_FATFS_2, THREAD_PRIO_FATFS ) )
|
||||
{
|
||||
@ -197,8 +195,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x85
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_SET_PATH )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_SET_PATH).\n");
|
||||
@ -208,8 +204,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x86
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( (fd = FS_OpenSrl()) < 0 )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_OpenSrl().\n");
|
||||
@ -219,8 +213,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x87
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( !FS_LoadHeader( fd ) )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_LoadHeader().\n");
|
||||
@ -230,8 +222,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x88
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_DONE_HEADER )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_HEADER).\n");
|
||||
@ -241,16 +231,12 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x89
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
AESi_InitKeysFIRM();
|
||||
AESi_RecvSeed( rh->s.developer_encrypt );
|
||||
// 9: after AESi_RecvSeed
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x8a
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( !FS_LoadStatic( fd ) )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_LoadStatic().\n");
|
||||
@ -260,8 +246,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x8b
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_DONE_STATIC )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_STATIC).\n");
|
||||
@ -294,9 +278,13 @@ void TwlSpMain( void )
|
||||
#endif
|
||||
SetDebugLED( 0 );
|
||||
|
||||
PM_BackLightOn( TRUE ); // last chance
|
||||
|
||||
#ifndef PMIC_FINAL
|
||||
PMi_SetParams( REG_PMIC_BL_BRT_B_ADDR, 22, PMIC_BL_BRT_B_MASK );
|
||||
#else
|
||||
MCUi_WriteRegister( MCU_REG_BL_ADDR, MCU_REG_BL_BRIGHTNESS_MASK );
|
||||
#endif
|
||||
PM_BackLightOn( TRUE );
|
||||
|
||||
OS_BootFromFIRM();
|
||||
|
||||
end:
|
||||
|
||||
@ -18,8 +18,6 @@
|
||||
#include <firm/pm.h>
|
||||
#include <twl/spi/common/pm_common.h>
|
||||
|
||||
static BOOL doneBackLight = FALSE;
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: PM_InitFIRM
|
||||
|
||||
@ -31,6 +29,7 @@ static BOOL doneBackLight = FALSE;
|
||||
*---------------------------------------------------------------------------*/
|
||||
void PM_InitFIRM( void )
|
||||
{
|
||||
#ifndef PMIC_FINAL
|
||||
// LED
|
||||
PMi_ResetFlags( REG_PMIC_LED_CTL_ADDR, PMIC_LED_CTL_AUTO_BLINK | PMIC_LED_CTL_BLINK_BY_SLEEP );
|
||||
PMi_SetParams( REG_PMIC_LVL4_BRT_ADDR,
|
||||
@ -56,11 +55,8 @@ void PM_InitFIRM( void )
|
||||
// LCD ON
|
||||
PMi_SetFlags( REG_PMIC_CTL2_ADDR, PMIC_CTL2_VDD50 );
|
||||
|
||||
// back light
|
||||
//PMi_SetParams( REG_PMIC_BL_BRT_A_ADDR, PMIC_BACKLIGHT_BRIGHT_MAX, PMIC_BL_BRT_A_MASK ); // TODO: less brightness
|
||||
//PMi_SetParams( REG_PMIC_BL_BRT_B_ADDR, PMIC_BACKLIGHT_BRIGHT_MAX, PMIC_BL_BRT_B_MASK ); // TODO: less brightness
|
||||
PMi_SetParams( REG_PMIC_BL_BRT_A_ADDR, 0, PMIC_BL_BRT_A_MASK );
|
||||
PMi_SetParams( REG_PMIC_BL_BRT_B_ADDR, 0, PMIC_BL_BRT_B_MASK );
|
||||
// back light level does not set
|
||||
#endif
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
@ -75,6 +71,8 @@ void PM_InitFIRM( void )
|
||||
*---------------------------------------------------------------------------*/
|
||||
void PM_BackLightOn( BOOL force )
|
||||
{
|
||||
static BOOL doneBackLight = FALSE;
|
||||
|
||||
if ( doneBackLight )
|
||||
{
|
||||
return; // have already set
|
||||
@ -87,7 +85,7 @@ void PM_BackLightOn( BOOL force )
|
||||
}
|
||||
if ( reg_GX_DISPSTAT & REG_GX_DISPSTAT_INI_MASK )
|
||||
{
|
||||
PMi_SetFlags( REG_PMIC_CTL2_ADDR, PMIC_CTL2_BACK_LIGHT_1 | PMIC_CTL2_BACK_LIGHT_2 );
|
||||
PMi_SetFlags( REG_PMIC_CTL_ADDR, PMIC_CTL_BKLT1 | PMIC_CTL_BKLT2 );
|
||||
doneBackLight = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@ -114,7 +114,7 @@ static void PreInit(void)
|
||||
リセットパラメータ(1バイト)を共有領域(1バイト)にコピー
|
||||
*/
|
||||
#define HOTSTART_FLAG_ENABLE 0x80
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCU_GetFreeRegister( OS_MCU_RESET_VALUE_OFS ) | HOTSTART_FLAG_ENABLE);
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
|
||||
}
|
||||
|
||||
/***************************************************************
|
||||
|
||||
@ -115,7 +115,7 @@ static void PreInit(void)
|
||||
リセットパラメータ(1バイト)を共有領域(1バイト)にコピー
|
||||
*/
|
||||
#define HOTSTART_FLAG_ENABLE 0x80
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCU_GetFreeRegister( OS_MCU_RESET_VALUE_OFS ) | HOTSTART_FLAG_ENABLE);
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
|
||||
}
|
||||
|
||||
/***************************************************************
|
||||
|
||||
@ -113,7 +113,7 @@ static void PreInit(void)
|
||||
リセットパラメータ(1バイト)を共有領域(1バイト)にコピー
|
||||
*/
|
||||
#define HOTSTART_FLAG_ENABLE 0x80
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCU_GetFreeRegister( OS_MCU_RESET_VALUE_OFS ) | HOTSTART_FLAG_ENABLE);
|
||||
*(u8 *)HW_NAND_FIRM_HOTSTART_FLAG = (u8)(MCUi_ReadRegister( (u16)(MCU_REG_TEMP_ADDR + OS_MCU_RESET_VALUE_OFS) ) | HOTSTART_FLAG_ENABLE);
|
||||
}
|
||||
|
||||
/***************************************************************
|
||||
@ -185,8 +185,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x84
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
SDNandContext = &OSi_GetFromFirmAddr()->SDNandContext;
|
||||
if ( !FATFS_Init( DMA_FATFS_1, DMA_FATFS_2, THREAD_PRIO_FATFS ) )
|
||||
{
|
||||
@ -197,8 +195,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x85
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_SET_PATH )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_SET_PATH).\n");
|
||||
@ -208,8 +204,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x86
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( (fd = FS_OpenSrl()) < 0 )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_OpenSrl().\n");
|
||||
@ -219,8 +213,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x87
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( !FS_LoadHeader( fd ) )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_LoadHeader().\n");
|
||||
@ -230,8 +222,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x88
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_DONE_HEADER )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_HEADER).\n");
|
||||
@ -241,16 +231,12 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x89
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
AESi_InitKeysFIRM();
|
||||
AESi_RecvSeed( rh->s.developer_encrypt );
|
||||
// 9: after AESi_RecvSeed
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x8a
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( !FS_LoadStatic( fd ) )
|
||||
{
|
||||
OS_TPrintf("Failed to call FS_LoadStatic().\n");
|
||||
@ -260,8 +246,6 @@ void TwlSpMain( void )
|
||||
PUSH_PROFILE();
|
||||
SetDebugLED(++step); // 0x8b
|
||||
|
||||
PM_BackLightOn( FALSE );
|
||||
|
||||
if ( PXI_RecvID() != FIRM_PXI_ID_DONE_STATIC )
|
||||
{
|
||||
OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_STATIC).\n");
|
||||
@ -294,9 +278,13 @@ void TwlSpMain( void )
|
||||
#endif
|
||||
SetDebugLED( 0 );
|
||||
|
||||
PM_BackLightOn( TRUE ); // last chance
|
||||
|
||||
#ifndef PMIC_FINAL
|
||||
PMi_SetParams( REG_PMIC_BL_BRT_B_ADDR, 22, PMIC_BL_BRT_B_MASK );
|
||||
#else
|
||||
MCUi_WriteRegister( MCU_REG_BL_ADDR, MCU_REG_BL_BRIGHTNESS_MASK );
|
||||
#endif
|
||||
PM_BackLightOn( TRUE );
|
||||
|
||||
OS_BootFromFIRM();
|
||||
|
||||
end:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user