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.

TI Flash Tool v1.6 on AM3703

Other Parts Discussed in Thread: AM3703, DM3730

Greetings,

I am currently trying to utilize the Flash Tool to flash a custom AM3703.  Right now, I am seeing the same error as some have reported.  Namely,

¯ -stdout

¯ -omap 3

¯ -no_force_package_alignment

¯ -com 52

¯ -t 60

¯ -p CUSTOM_AM37XX_BOARD

¯ -2

¯ chip_erase NANDINFO1BITBOOT 0

¯ Leaving parameter file:temp_script.txt

¯ @temp_script.txt

¯ Looking for device (omap com52)

¯ Please turn off device, then turn it on again

¯ Awaiting ASIC id

¯ AsicId items 04

¯ AsicId id 01 05 01 36 30 07 07

¯ AsicId secure_mode 13 02 01 00

¯ AsicId public_id 12 15 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

¯ AsicId root_key_hash 14 15 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

¯ Searching 2nd for: CUSTOM_AM37XX_BOARD 363007 07 GP

¯ Loading second file Targets\2nd-Downloaders\dnld_startup_omap3_gp_8g.2nd

¯ Entering parameter file:omapflash2nd.txt at line: 9

¯ -pheriphalboot_reopen

¯ Reading board configuration file Targets\Configurations\configuration_custom_am37xx.txt

¯ Reading definition file .\targets\definitions\definitions_omap3.txt

¯ -board_config Targets\Configurations\configuration_custom_am37xx.txt

¯ Leaving parameter file:omapflash2nd.txt

¯ Sending size of second file (0x00006804 bytes)

¯ Transferring second file to target (0x6804 bytes)

¯ Closing boot connection

¯ Found device (omap com52)

¯ Waiting for 2nd

 

And then it eventually times out.

 

I've read from other posts that this is related to the configuration.  Just wondering, if there is some documentation outlining how the configuration file (configuration_custom_am37xx.txt) should be tailored to accommodate the memory.  We are currently using Micron 8G NAND MT29F8G08ADBDAH4-IT:D and Mircon 2G SDRAM MT46H64M32LFCM-6 IT:A TR.

 

We have tried both the GUI and the command line version, with the same outcome.  We have modified omapflash2nd.txt to look for dnld_startup_omap3_gp_2g.2nd for CUSTOM_AM37XX_BOARD.  But the configuration (or mis-configuration) seems to be in the configuration_custom_am37xx.txt file.

 

Any assistance on this would be most appreciated.

 

 

  • hi Jessa

    Try to use https://gforge.ti.com/gf/download/frsrelease/506/4425/Flash_v1.5.zip

    and also try with option am7xx(micron).

    Regards

    Jethin

  • Jethin,

    I just uninstalled Flash Tool 1.6, and installed Flash Tool 1.5 from the link you suggested.  I am still seeing the same error.  I've tried on both a Windows 7 host machine and a Windows XP machine, with the same outcome.  I've also tried both AM37xx (Micron) and Custom AM37xx Board as the target.    Is there some configuration I should be concerned about?  I could not quite understand all the details in the configuration_em37xx_micron_2g.txt file, or the configuration_custom_am37xx.txt file.  And I have not been able to find any reference explaining the details in those files.  Thanks in advance for any further information.

    Output from the Flash Tool v1.5:

    ¯ -stdout

    ¯ -omap 3

    ¯ -com 55

    ¯ -t 60

    ¯ -p EVM_MDDR_MICRON_2G

    ¯ -2

    ¯ chip_erase NAND 0

    ¯ Leaving parameter file:temp_script.txt

    ¯ @temp_script.txt

    ¯ Looking for device (omap com55)

    ¯ Please turn off device, then turn it on again

    ¯ Awaiting ASIC id

    ¯ Awaiting ASIC id

    ¯ AsicId items 04

    ¯ AsicId id 01 05 01 36 30 07 07

    ¯ AsicId secure_mode 13 02 01 00

    ¯ AsicId public_id 12 15 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    ¯ AsicId root_key_hash 14 15 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    ¯ Searching 2nd for: EVM_MDDR_MICRON_2G 363007 07 GP

    ¯ Loading second file Targets\2nd-Downloaders\dnld_startup_omap3_gp_2g.2nd

    ¯ Entering parameter file:omapflash2nd.txt at line: 16

    ¯ -pheriphalboot_reopen

    ¯ Reading board configuration file Targets\Configurations\configuration_evm37xx_micron_2g.txt

    ¯ Reading definition file .\targets\definitions\definitions_omap3.txt

    ¯ -board_config Targets\Configurations\configuration_evm37xx_micron_2g.txt

    ¯ Leaving parameter file:omapflash2nd.txt

    ¯ Sending size of second file (0x00006804 bytes)

    ¯ Transferring second file to target (0x6804 bytes)

    ¯ Closing boot connection

    ¯ Found device (omap com55)

    ¯ Waiting for 2nd

    ¯ Reception failed - timeout after 60 s during peripheral boot (waiting for 2nd)

    Console program failed, exit code: 2

  • Jesse,

    From the log i can see you are using the uart, why cant you use USB boot option as try?

    Regards

    Jethin

  • Jesse

    All the boards you have the same issue?

    Regards

    Jethin

  • Jethin,

    The board is a custom AM3703 module.  It only has UART3 available.

    -jesse-

  • Yup.  Tried on three boards.  The same problem consistently.

    -jesse-

  • Are you able to do atleast complete Erase of nand flash?

    Jethin

  • Nope.  Getting the "waiting for 2nd" timeout error from trying to erase the NAND.

    -jesse-

  • Dear Jesse,

    Can you try the pserial.exe and communicate with boot rom and you can directly run code into SRAM.

    http://processors.wiki.ti.com/index.php/WinCE-BSP_ARM-A8_User_Guide

    I hope this will help you?

    Regards

    Jethin

  • Is it helps?

    Regrads

    Jethin

  • Still no luck.

    Tried pserial.exe on a 32-bit XP host machine, and got the following output:

    C:\omap-u-boot-utils-pack-r0.2\bin\winXP\x32>pserial.exe -p COM41 -f MLO
    Waiting For Device ASIC ID: Press Ctrl+C to stop   [applied power to the target at this point]
    ASIC ID Detected.
    Sending 2ndFile:
    Downloading file: 100.000% completed(44760/44760 bytes)

    At this point, the program stops responding, and COM41 is not accessible by Hyperterm, as it complains that the port is currently being used by another application.

  • An update:

    Don't know why pserial.exe didn't work the first couple of times I tried.  Power cycled everything, and then tried again.

    Got the pserial.exe to run at least:

    C:\omap-u-boot-utils-pack-r0.2\bin\winXP\x32>pserial.exe -p COM41 -f MLO
    Waiting For Device ASIC ID: Press Ctrl+C to stop
    ASIC ID Detected.
    Sending 2ndFile:
    Downloading file: 100.000% completed(44760/44760 bytes)
    File download completed.

    Not sure if I can utilize the same steps using MLO and u-boot.bin the same way.  But when I tried to transfer u-boot.bin via the Hyperterm (following the instruction to set the port settings, transfer file with Xmodem, etc.), it eventually timed out with the dialog box saying "No response from remote system".

    Thanks for you patience and your help on this!

    -jesse-

  • Jesse,

    From the message i can see you have successfully downloaded your code into SRAM of OMAP.

    Now why cant you initiate a debug led blinking to make sure your code is running and system is live?

    Do you receive any symbols in hyperterm?

    Regards

    Jethin

  • Still got stuck with flash tool?

    Regards

    Jethin

  • Yeah.  Tried to reset after pserial.exe transferred the x-loader to SRAM.  But nohng.  I then tried to flash the same x-loader to a DM3730 EVM NAND, and that worked (see the console traffic).   We are using the Abatron BDI3000 to find out what the heck is going on.

    -jesse-

  • Jesse,

    Are you working with wince or linux?

    Why cant you try SD boot?

    Are you able to execute the code from SRAM?

    Please check above before going with JTAG debugging

    Regards

    Jethin

  • Jethin,

    I am working with Linux.

    It's a custom board that we are using.  The SD pins are not brought out to be access.

    By executing the code in SRAM (via JTAG debug), I think we have found an issue with the memory configuration.  We are fixing that right now.

    While I was using the pserial.exe tool you mentioned, I noticed that once it's able to pick up the ASIC ID across UART3, it seems to always respond that the file was transfer successfully.

    -jesse-

  • please check your DDR ad GPMC configurations

    Regards

    Jethin

  • Hi Jesse,

    Firstly, I can point you to some documentation that can help with the configuration file.  The file porting_guide.txt is located in the root installation directory of Flash tool, and provides guidance about porting the flash tool to custom boards and memories.

    Let me explain how the files are interconnected.  Based on the target you selected in the flash GUI, one of the text lines in omapflash2nd.txt is selected for use.  For example, if you choose "AM37xx (Micron)", this chooses the line beginning with "EVM_MDDR_MICRON_2G 363007 07 GP".  If you select "Custom AM37xx Board" (recommended if not using the EVM), this chooses the line beginning with "CUSTOM_AM37XX_BOARD".

    Now, the main thing to be concerned with in omapflash2nd.txt is the "2nd loader" that is chosen.  It needs to match the SDRAM memory size for your board.  You indicated a 2 gigabit SDRAM, so you must use "dnld_startup_omap2_gp_2g.2nd".  I noticed in the output that "dnld_startup_omap2_gp_8g.2nd" was used - this will certainly result in the failure that you are seeing.

    Please begin by checking out the porting_guide file, and then ensuring that you are using the appropriate 2nd loader file for your memory size.  If the problem persists, respond back to this post and I will provide further suggestions.

  • Greg,

    Thanks for the info.  We have since brought up our boards using the Abatron BDI3000.  But it would be great to be able to get the board up using the Flash Tool for production.

    We have tried using dnld_startup_omap2_gp_2g.2nd.  This gave us the same results when I tried to use the Flash Tool to erase NAND region 0x0 to 0x80000:

    Waiting for 2nd

    Reception failed - timeout after 60 s during peripheral boot (waiting for 2nd).

     

    -jesse-

  • It's possible then that we have a memory timing problem (DDR memory).  What oscillator or SYSCLK are you using?  19.2 MHz, 26MHz, other?  This will affect the register configuration settings that we have in the configuration file.  Some of the SDRC registers may need to change.  

    One more question, what speed is your DDR memory? Usually this is 166MHz or 200MHz.

  • We are running 26 MHz. 

    DDR is 166 MHz.

    -jesse-

  • Given that, I believe the PRCM configuration given in configuration_evm37xx_micron_2g.txt should be correct for you....it is set up to use 26MHz oscillator along with timings for 166MHz.

    If you have a bootloader (u-boot or otherwise) that is working for your board, could you compare the register configurations for the PRCM and the SDRC to what you see in the configuration file?  This is how we originally created the configuration files.  It's a manual process, but it should uncover any inconsistencies.  Remember that the purpose of the register configurations in the configuration file is simply to perform the minimal configuration required to access SDRAM and NAND on your board.  The major steps are 1) PRCM configuration, 2) SDRC configuration, 3) pin multiplexing, 4) and GPMC configuration.  

    Regarding GPMC configuration, the file assumes NAND is connected as chip select 0 (CS0) to the GPMC.  Is this the case for your board?