• TI Thinks Resolved

Starterware/TDA3: QSPI_SD boot on TDA3xx using VISION_SDK_02_11_00_00

Part Number: TDA3

Tool/software: Starterware

Hello All,

I am following section 3.6 of  VisionSDK_UserGuide_TDA3xx.pdf for QSPI_SD boot.

version of vision sdk is VISION_SDK_02_11_00_00.

I am using 15x15 TI TDA3xx EVM.

SW2 & SW3 Switch setting 10011000 10000001, SW8001 switch setting 0100 0001.

After performing steps 1, 2 & 3 from section 3.6.3 i get following output

[Cortex_M4_IPU1_C0] 
QSPI Flash writer application
Enter Device type to use                
1 - 1 bit read from flash                
2 - 4 bit (Quad) read from flash                
$ > 2

MID - 1
DID - 18
Enter 0 for Erase-Only (without flashing any image)
Note : File size should be less than 33554432 Bytes.
Enter the file path to flash: C:\VISION_SDK_02_11_00_00\vision_sdk\build\scripts\qspi_sd_tda3xx-evm\sbl_qspi_sd
Enter the Offset in bytes (HEX): 0x00
Erase Options:
---------------
    0 -> Erase Only Required Region
    1 -> Erase Whole Flash
    2 -> Skip Erase 
Enter Erase Option: 
1
Load Options:
-------------
    0 -> fread using code (RTS Library)
    1 -> load raw using CCS (Scripting console)
Enter Load Option: 
0
Reading 85048 bytes from file...
Read 16384 bytes [19%] from file...
Read 32768 bytes [38%] from file...
Read 49152 bytes [57%] from file...
Read 65536 bytes [77%] from file...
Read 81920 bytes [96%] from file...
Read 85048 bytes [100%] from file. Done!!

 QSPI whole chip erase in progress

 QSPI Erase completed

 QSPI file write started 
file size to write: 85048 Bytes 

I followed following thread but it is not answered

https://e2eprivate.ti.com/tdax_adas_sw/f/309/p/6781/39118.aspx#39118

 

Regards,

Rahul

  • Hi, ,

    Your query has been forwarded to Starerware expert for comments.

    Regards,
    Mariya
  • In reply to Mariya Petkova:

    Hi Rahul,

    Can you pause the CPU and check where the execution is stuck?

    The source for the flash writer exe is in starterware

    starterware_<rel_no>\tools\flashtools\qspi_flash_writer

    and it it links with a qspi lib present at location

    starterware_<rel_no>\qspilib\qspi_flash

    If it is stuck in waiting for flash status check the value returned from QSPI_FlashStatus and let us know.

    Regards,
    Prasad

  • In reply to Prasad Konnur:

    Hello Prasad,

    When I pause CPU i get following message:
    Can't find a source file at "C:\VISION_SDK_02_11_00_00\ti_components\drivers\starterware_01_07_00_19\tools\flashtools\qspi_flash_writer/qspi_flash.c"
    Locate the file or edit the source lookup path to include its location.

    Regards,
    Rahul
  • In reply to Rahul Sharma71:

    Rahul,

    You can use the locate source from the CCS file editor window to browse to the file location in your pc.
    use the install path instead of C:\VISION_SDK_02_11_00_00

    This happens when the binary is built from some other location and loaded from some other location (Ex in cases of pre built binaries)

    Regards,
    Prasad

  • In reply to Prasad Konnur:

    Hello Prasad,

    I have built and loaded binary from same location. Also when i searched for qspi_flash.c file at the path "C:\VISION_SDK_02_11_00_00\ti_components\drivers\starterware_01_07_00_19\tools\flashtools\qspi_flash_writer" it is not present there. Instead it is present at "C:\VISION_SDK_02_11_00_00\ti_components\drivers\starterware_01_07_00_19\qspilib\qspi_flash" location.

    Regards,
    Rahul
  • In reply to Rahul Sharma71:

    Rahul,

    qspi_flash_writer is an application which uses the qspilib.
    Locate the qspi_flash.c file from qspilib\qspi_flash location only and see where the code is stuck

    Not sure why ccs is trying to take file from different folder.

    Regards,
    Prasad

  • In reply to Prasad Konnur:

    Hello Prasad,

    For time being I copied qspi_flash.c, qspi_flash.h,qspi_cmd_init.c and qspi_cmd_init.h at the location where it is looking for these files. After that when I pause it stops at QSPI_executeCMD(). Please find attached screen shot for the same. Also that function is showing some error regarding cannot load from non primitive location.

    Regards,

    Rahul

  • In reply to Rahul Sharma71:

    Hello Prasad,

    Any input on this?

    Regards,
    Rahul
  • In reply to Rahul Sharma71:

    Hi Rahul,

    What is the value returned from function QSPI_flashStatus()?

    Regards,
    Prasad

  • In reply to Prasad Konnur:

    I set breakpoint inside QSPI_flashStatus() to know when it is called, but it never hit breakpoint means function is not getting called so unable to find QSPI_flashStatus() value. It is repeatedly executing QSPI_executeCMD() function. retvalue of QSPI_executeCMD() is 0.

    Regards,
    Rahul