Dear Sir,
I am trying to boot my DM6437 in EMIFA ROM Fast Boot mode.
It boots fine, when all SECTIONS are mapped into L2RAM.
The C code were as follows:
...
...
void main( void )
{
//EVMDM6437_init( );
OnTargetConnect();
EVMDM6437_I2C_GPIO_init( );
led_test( );
}
...
...
void OnTargetConnect()
{
Setup_Cache( );
Setup_Pin_Mux( ); // Setup Pin Mux
Setup_Psc_All_On( ); // Setup Power Domains
Setup_PLL0_594_MHz_OscIn( ); // Setup Pll1 [DSP @ 594 MHz][Core 1.20V]
//Setup_PLL0_459_MHz_OscIn( ); // Setup Pll1 [DSP @ 459 MHz][Core 1.05V]
//Setup_PLL1_DDR_108_MHz_OscIn( );
//Setup_PLL1_DDR_121_5_MHz_OscIn();
//Setup_PLL1_DDR_135_MHz_OscIn();
Setup_Aemif_8Bit_Bus( ); // Setup Async-EMIF [8-bit bus]
//Setup_PLL1_DDR_148_5_MHz_OscIn( );
Setup_PLL1_DDR_162_MHz_OscIn( );// Setup Pll2 [VPSS @ 54 MHz, DDR @ 162 MHz]
//GEL_TextOut( "\nStartup Complete.\n\n" );
}
...
The linker commands for the project were as follows:
MEMORY
{
VECS: o = 0x10800000 l = 0x00000200
BOOT: o = 0x10800200 l = 0x00000200
IRAM: o = 0x10800400 l = 0x0001FA00
DDR2: o = 0x80000000 l = 0x08000000
}
SECTIONS
{
.bss > IRAM
.cinit > IRAM
.cio > IRAM
.const > IRAM
.data > IRAM
.far > IRAM
.stack > IRAM
.switch > IRAM
.sysmem > IRAM
.text > IRAM
.ddr2 > DDR2
}
When all SECTIONS were mapped into DDR2, it CAN NOT boot successfully!
The linker commands for the project were as follows:
MEMORY
{
VECS: o = 0x10800000 l = 0x00000200
BOOT: o = 0x10800200 l = 0x00000200
IRAM: o = 0x10800400 l = 0x0001FA00
DDR2: o = 0x80000000 l = 0x08000000
}
SECTIONS
{
.bss > DDR2
.cinit > DDR2
.cio > DDR2
.const > DDR2
.data > DDR2
.far > DDR2
.stack > DDR2
.switch > DDR2
.sysmem > DDR2
.text > DDR2
.ddr2 > DDR2
}
I don't know what's the problem, could you do me favor and give me some suggestions?
Thanks !