mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
ARM7 waits for setting main memory CR.
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@23 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
4341524a07
commit
cf11c511c9
@ -97,6 +97,14 @@ SDK_WEAK_SYMBOL asm void _start( void )
|
|||||||
bmi @1_2
|
bmi @1_2
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
//---- wait for main memory mode into burst mode
|
||||||
|
ldr r3, =REG_EXMEMCNT_L_ADDR
|
||||||
|
mov r1, #REG_MI_EXMEMCNT_L_ECE2_MASK
|
||||||
|
@1:
|
||||||
|
ldrh r2, [r3]
|
||||||
|
tst r2, r1
|
||||||
|
beq @1
|
||||||
|
|
||||||
//---- load autoload block and initialize bss
|
//---- load autoload block and initialize bss
|
||||||
bl do_autoload
|
bl do_autoload
|
||||||
|
|
||||||
|
|||||||
@ -15,7 +15,38 @@
|
|||||||
$Author$
|
$Author$
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
#include <firm/mi.h>
|
#include <firm/mi.h>
|
||||||
#include <nitro/code32.h>
|
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: MIi_IsMainMemoryInitialized
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
BOOL MIi_IsMainMemoryInitialized( void )
|
||||||
|
{
|
||||||
|
return (BOOL)((reg_MI_EXMEMCNT & REG_MI_EXMEMCNT_CE2_MASK) >> REG_MI_EXMEMCNT_CE2_SHIFT);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: MIi_WaitMainMemoryInitialize
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void MIi_WaitMainMemoryInitialize( void )
|
||||||
|
{
|
||||||
|
while( MIi_IsMainMemoryInitialized() == FALSE )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
Name: MIi_InitMainMemCR
|
Name: MIi_InitMainMemCR
|
||||||
@ -26,6 +57,8 @@
|
|||||||
|
|
||||||
Returns: None
|
Returns: None
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
#include <nitro/code32.h>
|
||||||
|
|
||||||
asm void MIi_InitMainMemCR( void )
|
asm void MIi_InitMainMemCR( void )
|
||||||
{
|
{
|
||||||
mov r12, lr
|
mov r12, lr
|
||||||
|
|||||||
@ -71,6 +71,27 @@ extern "C" {
|
|||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
void MIi_InitMainMemCR( void );
|
void MIi_InitMainMemCR( void );
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: MIi_IsMainMemoryInitialized
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
BOOL MIi_IsMainMemoryInitialized( void );
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: MIi_WaitMainMemoryInitialize
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void MIi_WaitMainMemoryInitialize( void );
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
} /* extern "C" */
|
} /* extern "C" */
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user