This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6657 SPI boot repeatly read the first 32bit data in the nor flash

      we use the c6657 spi boot ,after we change the switch to the spi boot mode ,we use the oscilloscope to observe ,we found that the dsp send the same command(0x03000000 which is the read command plus the address),then the flash send to the dsp the same data (1651, the first data in the .dat file) ,I want to know why not the address increase ,does the RBL run into a endless loop? if it run into the endless loop ,why?

  • Hi Xin,

    Please provide the following:

    Are you trying to boot this on your own custom hardware?

    what is the size of the NOR flash on the hardware?

    Please share your boot mode switch settings?

    Followed the below steps to validated the NOR Boot:

    1. Flashed the IBL to EEPROM (refer the txt documents \ti\mcsdk_2_01_02_06\tools\boot_loader\ibl\doc)

    2. Change the boot mode dip switch settings to NO boot mode and  Flashed NOR with pre-build binary (\ti\mcsdk_2_01_02_06\tools\program_evm\binaries\evm6657l\nor.bin) with the reference of NOR flash readme.txt file.

    3. Change the boot mode dip switch settings to NOR boot mode and validate the NOR boot.

    4. After validated the NOR boot and then change then Change the boot mode dip switch settings to NO boot mode and Re-flashed NOR with my own binary.

    5. Change the boot mode dip switch settings to NOR boot mode and validate the NOR boot.

    Followed the below steps to Convert the .out file to .bin format:

    1. After successful build the .out file is generated with more than 6MB size.

    2. Use strip6x.exe to convert .out file to .bin format. "strip6x.exe -p -o <Output file name .bin> <Input file .out>"

        Example : C:\ti\C6000 Code Generation Tools 7.4.0\bin>strip6x.exe -p -o ..\..\..\Bin\nor.bin ..\..\..\Bin\hua_evmc6657l.out

    Thanks,

  • We really boot on our own custom hardware, we use the flash N25Q032A ,the size is 32M ,the same type with the EVM,our  boot mode switch settings is 0001000000110, we use the spi boot mode.

  • Xin,

    In order to analyze the boot issue, can you please provide us the value of DEVSTAT register, Program counter that you see the device executing when the boot fails. Also can pllease provide the following information.

    Are you using a paramaeter table along with the boot table that you pass to the device. If yes, what is the bus SPI speed and PLL settings in the parameter table. Are you loading code in DDR memory? Does your device implement a IBL in I2C to initalize the hardware or is it direct boot from SPI.

    Regards,

    Rahul

     

  • Hi, Rahul

        Thanks for your reply,

        we boot directly from SPI, and we don't have DDR on our board, 

        the value of  DEVSTAT register is 0x040D,refer to the set of our boot mode pin [12:0] 0001000000110,

    we use a parameter table along with the boot table and our nysh.spi.map is :

    section {

    boot_mode = 50
    param_index = 0
    options = 1
    core_freq_mhz = 1000
    exe_file = "simple.i2c.ccs"
    next_dev_addr_ext = 0x0
    sw_pll_prediv = 0
    sw_pll_mult = 19
    sw_pll_postdiv = 2
    sw_pll_flags = 1
    addr_width = 24
    n_pins = 4
    csel = 0
    mode = 0
    c2t_delay = 0
    bus_freq_mhz = 5
    bus_freq_khz = 0

    }

    we refer to the document attached (2311.Booting from the SPI NOR.pdf) to transform the .out file to .dat file and then flash the whole .dat file into the nor flash start at address 0x00000000 ,the front several lines are below:

    1651 1 10000 1 319     //line 1
    0x00005000
    0x00003200
    0x02002040
    0x18000100
    0x00000400
    0x00000000
    0x0000e803
    0x0000f401
    0x00000004

    .......

    0x00000000

    ......

    0x19038000       //line 258
    0x00008010
    0x60070000
    0xc0008210

    now when we boot , the dsp repeatly read 1651 from the flash ,we don,t know why

    sorry, I don't know how to find "Program counter that you see the device executing when the boot fails"