AnsweredAssumed Answered

Boot from internal SPI Flash on BF518F

Question asked by mauri1106 on Mar 16, 2010
Latest reply on Mar 18, 2010 by mauri1106

Hello,

     I'm working on BF518F EZ kit Board and I have a problem when I try to start my program from internal SPI Flash Memory.

Until I run the application with the emulator, all works fine, but when I try to load the program in internal Flash memory, the application doesn't works.

 

I' ve understood (I hope) the "theoretical" way to boot from flash because I work with BF537 DSP also and I've no problems to boot from external parallel Flash Memory.

 

On EZ Kit Board SW1 is in position 2, JP3 and JP16 are both open and my VDSP project is configured to start from SPI, Intel hex, 8-bit.

 

This is the Initialization file I use:

 

 

/*****************************************************************************
* SDRAM_Init.c
*****************************************************************************/
#include <defBF512.h>
#include <services/services.h>

 


int main( void )
{
    int i;

    //=========

    //PLL Settngs

    //=========
    *pPLL_CTL = 0x2000;
    *pPLL_DIV = 0x0005;
    *pVR_CTL = 0x30B0;
    *pPLL_LOCKCNT = 0x0200;
   
   
    //==========

    //EBIU Settings

    //==========
    *pEBIU_SDRRC = 0x026B;
    ssync;

    *pEBIU_SDBCTL = 0x25;
    ssync;
   
    *pEBIU_SDGCTL = 0xC0911109;
    ssync;
   
    *pEBIU_AMGCTL = 0x00F2;
    ssync;

 

    //=========
    //SPI Settings

    //=========
    *pPORTH_FER &= ~(PH8);                        
    *pPORTHIO_DIR |= PH8;
  
    *pPORTHIO_SET = PH8;
   
   for(i=0; i<300; i++){
        asm("nop;");
    }
   
    *pPORTHIO_CLEAR = PH8;

 

    *pSPI_FLG = 0x10;
    *pSPI0_BAUD = 0x0002;
    *pSPI_CTL = 0x5001;
   
    return 0;
}

 

Any suggestions?

 

Thanks a lot

Maurizio

Outcomes