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.

loading u-boot using sfh_DM35x.exe

Hi,I want to flash my dm355_evm's u-boot and ubl by using sfh_DM35x.exe(as what it said on the website:http://wiki.davincidsp.com/index.php?title=Serial_Boot_and_Flash_Loading_Utility).At first ,I set sw7 to 11 and run the command as the website said .below is the procedue:

*****************************************************************************************************

*****************************************************************************************************

sfh_DM35x.exe -nanderase

   Ver. 1.10
-----------------------------------------------------


Platform is Windows.
Globally erasing NAND flash.


Attempting to connect to device COM1...
Press any key to end this program at any time.


Waiting for the DM35x...
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
        Target:   BEGIN
BEGIN commmand received. Sending CRC table...
CRC table sent.  Waiting for DONE...
DONE received.  Sending the UBL...
DONE received.  UBL was accepted.
UBL transmitted successfully.

        Target: Chip initialization passed!
        Target: TI SFT Version: 1.10
        Target: Booting Catalog Boot Loader
        Target: BootMode = UART

Waiting for SFT on the DM35x...
        Target: Starting UART Boot...
        Target: BOOTUBL
BOOTUBL commmand received. Returning CMD and command...
CMD value sent.  Waiting for DONE...
        Target:    DONE
DONE received. Command was accepted.
        Target: Unprotecting blocks 0x00000001 through 0x00000031.
        Target: Erasing block 0x00000001 through 0x00000031.
        Target: Erase completed successfully.
        Target: Protecting the entire NAND flash.
        Target:    DONE
        Target:    DONE

Operation completed successfully.

sfh_DM35x.exe -nandflash ublDM355-nand.bin u-boot-1.2.0-dm355_evm.bin

-----------------------------------------------------
   TI Serial Flasher Host Program for DM35x
   (C) 2008, Texas Instruments, Inc.
   Ver. 1.10
-----------------------------------------------------


Platform is Windows.
Flashing NAND with ublDM355-nand.bin and u-boot-1.2.0-dm355_evm.bin.


Attempting to connect to device COM1...
Press any key to end this program at any time.


Waiting for the DM35x...
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
        Target:   BEGIN
BEGIN commmand received. Sending CRC table...
CRC table sent.  Waiting for DONE...
DONE received.  Sending the UBL...
DONE received.  UBL was accepted.
UBL transmitted successfully.

        Target: Chip initialization passed!
        Target: TI SFT Version: 1.10
        Target: Booting Catalog Boot Loader
        Target: BootMode = UART

Waiting for SFT on the DM35x...
        Target: Starting UART Boot...
        Target: BOOTUBL
BOOTUBL commmand received. Returning CMD and command...
CMD value sent.  Waiting for DONE...
        Target:    DONE
DONE received. Command was accepted.
Sending the UBL image
Waiting for SENDIMG sequence...
SENDIMG received. Returning ACK and header for image data...
ACK command sent. Waiting for BEGIN command...
BEGIN commmand received. Sending the image data...
Image data sent.  Waiting for DONE...
DONE received.  All bytes of image data received...
        Target: Writing UBL to NAND flash
        Target: Number of blocks needed for header and data:

0x0x00000001
        Target: Attempting to start in block number 0x0x00000001.
        Target: Unprotecting blocks 0x00000001 through 0x00000001.
        Target: Erasing block 0x00000001 through 0x00000001.
        Target: Writing header data to Block 0x00000001, Page 0x00000000
        Target: Writing image data to Block 0x00000001, Page 0x00000001
        Target: Writing image data to Block 0x00000001, Page 0x00000002
        Target: Writing image data to Block 0x00000001, Page 0x00000003
        Target: Writing image data to Block 0x00000001, Page 0x00000004
        Target: Writing image data to Block 0x00000001, Page 0x00000005
        Target: Writing image data to Block 0x00000001, Page 0x00000006
        Target: Protecting the entire NAND flash.
        Target:    DONE
Sending the Application image
Waiting for SENDIMG sequence...
SENDIMG received. Returning ACK and header for image data...
ACK command sent. Waiting for BEGIN command...
BEGIN commmand received. Sending the image data...
Image data sent.  Waiting for DONE...
DONE received.  All bytes of image data received...
        Target: Writing APP to NAND flash
        Target: Number of blocks needed for header and data:

0x0x00000001
        Target: Attempting to start in block number 0x0x00000019.
        Target: Unprotecting blocks 0x00000019 through 0x00000019.
        Target: Erasing block 0x00000019 through 0x00000019.
        Target: Writing header data to Block 0x00000019, Page 0x00000000
        Target: Writing image data to Block 0x00000019, Page 0x00000001
        Target: Writing image data to Block 0x00000019, Page 0x00000002
        Target: Writing image data to Block 0x00000019, Page 0x00000003
        Target: Writing image data to Block 0x00000019, Page 0x00000004
        Target: Writing image data to Block 0x00000019, Page 0x00000005
        Target: Writing image data to Block 0x00000019, Page 0x00000006
        Target: Writing image data to Block 0x00000019, Page 0x00000007
        Target: Writing image data to Block 0x00000019, Page 0x00000008
        Target: Writing image data to Block 0x00000019, Page 0x00000009
        Target: Writing image data to Block 0x00000019, Page 0x0000000A
        Target: Writing image data to Block 0x00000019, Page 0x0000000B
        Target: Writing image data to Block 0x00000019, Page 0x0000000C
        Target: Writing image data to Block 0x00000019, Page 0x0000000D
        Target: Writing image data to Block 0x00000019, Page 0x0000000E
        Target: Writing image data to Block 0x00000019, Page 0x0000000F
        Target: Writing image data to Block 0x00000019, Page 0x00000010
        Target: Writing image data to Block 0x00000019, Page 0x00000011
        Target: Writing image data to Block 0x00000019, Page 0x00000012
        Target: Writing image data to Block 0x00000019, Page 0x00000013
        Target: Writing image data to Block 0x00000019, Page 0x00000014
        Target: Writing image data to Block 0x00000019, Page 0x00000015
        Target: Writing image data to Block 0x00000019, Page 0x00000016
        Target: Writing image data to Block 0x00000019, Page 0x00000017
        Target: Writing image data to Block 0x00000019, Page 0x00000018
        Target: Writing image data to Block 0x00000019, Page 0x00000019
        Target: Writing image data to Block 0x00000019, Page 0x0000001A
        Target: Writing image data to Block 0x00000019, Page 0x0000001B
        Target: Writing image data to Block 0x00000019, Page 0x0000001C
        Target: Writing image data to Block 0x00000019, Page 0x0000001D
        Target: Writing image data to Block 0x00000019, Page 0x0000001E
        Target: Writing image data to Block 0x00000019, Page 0x0000001F
        Target: Writing image data to Block 0x00000019, Page 0x00000020
        Target: Writing image data to Block 0x00000019, Page 0x00000021
        Target: Writing image data to Block 0x00000019, Page 0x00000022
        Target: Writing image data to Block 0x00000019, Page 0x00000023
        Target: Writing image data to Block 0x00000019, Page 0x00000024
        Target: Writing image data to Block 0x00000019, Page 0x00000025
        Target: Writing image data to Block 0x00000019, Page 0x00000026
        Target: Writing image data to Block 0x00000019, Page 0x00000027
        Target: Writing image data to Block 0x00000019, Page 0x00000028
        Target: Writing image data to Block 0x00000019, Page 0x00000029
        Target: Writing image data to Block 0x00000019, Page 0x0000002A
        Target: Writing image data to Block 0x00000019, Page 0x0000002B
        Target: Writing image data to Block 0x00000019, Page 0x0000002C
        Target: Writing image data to Block 0x00000019, Page 0x0000002D
        Target: Writing image data to Block 0x00000019, Page 0x0000002E
        Target: Writing image data to Block 0x00000019, Page 0x0000002F
        Target: Writing image data to Block 0x00000019, Page 0x00000030
        Target: Writing image data to Block 0x00000019, Page 0x00000031
        Target: Writing image data to Block 0x00000019, Page 0x00000032
        Target: Writing image data to Block 0x00000019, Page 0x00000033
        Target: Writing image data to Block 0x00000019, Page 0x00000034
        Target: Writing image data to Block 0x00000019, Page 0x00000035
        Target: Writing image data to Block 0x00000019, Page 0x00000036
        Target: Writing image data to Block 0x00000019, Page 0x00000037
        Target: Writing image data to Block 0x00000019, Page 0x00000038
        Target: Writing image data to Block 0x00000019, Page 0x00000039
        Target: Writing image data to Block 0x00000019, Page 0x0000003A
        Target: Writing image data to Block 0x00000019, Page 0x0000003B
        Target: Writing image data to Block 0x00000019, Page 0x0000003C
        Target: Writing image data to Block 0x00000019, Page 0x0000003D
        Target: Writing image data to Block 0x00000019, Page 0x0000003E
        Target: Writing image data to Block 0x00000019, Page 0x0000003F
        Target: Protecting the entire NAND flash.
        Target:    DONE
        Target:    DONE

Operation completed successfully.
*****************************************************************************************************

*****************************************************************************************************

Then, I powered off the board ,turn sw7 to 00,opened hyper-terminal and set it to 115200 n 8 1. when I powered up again ,nothing display on hyber-terminal ,I think it means the u-boot have been flashed to wrong address?am I right?

I read readme.txt of sfh_dm35x.exe and it said :

The entry point of the UBL is assumed to be 0x0100, but this can be changed by using
the -UBLStartAddr option.  The entry point and load address of the application default
to 0x81080000 (u-boot defaults).  To change these values, use the -APPStartAddr and
-APPLoadAddr option.

Do I need to change the APPStartAddr or UBLStartAddr? If not ,would you please tell me what wrong with my board?

  • Does anyone have the same problem with me?

  • I just tried this myself successfully on DM355 EVM. Please note that you must use UBL included with utility. Steps below

    1) go to wiki site and download utility http://wiki.davincidsp.com/index.php?title=Serial_Boot_and_Flash_Loading_Utility

    2) open DOS prompt and go to ...\DM35x_FlashAndBootUtils_1_10\DM35x\GNU

    3) copy u-boot file from DVSDK to this directory (e.g. u-boot-1.2.0-dm355_evm.bin from DVSDK 1.30.00.41)

    4) With EVM powered off, set SW7 switch on EVM to OFF-OFF, and turn on EVM.

    5) Type the following command

      % sfh_DM35x.exe -nanderase
    

    6) if step 5 completes sucessfully (message printed out), power cycle EVM and type the following command

      % sfh_DM35x.exe -nandflash ubl\ubl_DM35x_nand.bin u-boot-1.2.0-dm355_evm.bin   (note we use UBL included w/ utility)
    

    7) power off EVM, set SW7 on EVM to ON-ON.

    8) Open serial terminal utility (e.g. teraterm, hyperterm...) and power ON EVM. You should see u-boot loading. At this point, you can use u-boot to flash Linux Kernel.

  • I have the same problem.
    I am using a 29F16G08MAA Flash.

    i did your steps from 1 to 7 successfully, but after step 8 there is no message at hyperterminal and the LED DS22 is only blinking lid.
    If i remember correctly during boot this LED shows a bit more of activity?!

    So what went wrong?
    I need to get this workin, cause the original Flash shows the same... It wont boot, no message at hyperterminal. Only DS22 is blinking slowly.

    Please help me!

    Alex

     

    p.s. sometimes DS22 dont blink, its only on.... (with both Flashes)

    p.s2. Ok i figured folloing out.


    My original Flash does still work, it was only kind of missconnection in the Flashsocket. Cause the side of the wing with the lock mechanism broke and i think so the flash didnt have enough pressure into the socket. I fixed it with a small piece of paper to get more pressure and so the original one does work again.

    But the newly flashed one wont work, also with more pressure there is only DS22 lid and no response at hyper terminal.

     

  • Since you mentioned flashsocket, I assume you are tryin this on your own board design (as opposed to our EVM), correct?  If so, can you try this on our EVM?

    I have flashed both new and older u-boot on our EVM successfully and can see u-boot prompt come up on hyperterminal.  If you are only seeing this failure on your board, then we need to investigate what is different between our EVM and your board.

    FYI, after I flash u-boot, I find DSS2 is lit until I successfully boot Linux once, after that it is off for subsequent boots.

  • erm my english is not so good.
    I have the DM355EVM provied by SD.
    The Flashchip is inside of a plastic "box" this i called socket.

    During boot with the original FlashChip the DS22 also stays lit.

  • can I flash my new nand flash using UART ?my new nand flash is MT29F16G08DAAWP which is compatible with MT29F16G08FAA. I have tred to use in windows xp2 ,and the logs  as flows :

     

    .......................................

    Target:Eraseing block  0x00000030 through 0x00000030  .

    Target:Writing header and image data to Block 0x00000030,Page 0x00000000.      

    Target:Eraseing block  0x00000031 through 0x00000031  .

    Target:Writing header and image data to Block 0x00000031,Page 0x00000000.         

    Target:Eraseing block  0x00000032 through 0x00000032  .

    Target:Writing header and image data to Block 0x00000032,Page 0x00000000.         

    Target:Protecting the entire NAND flash.

    Target:DONE

    Target:DONE

    Operation completed successfully

     

    When I turn off all of SW7,but i get nothing displayed on com tool.And why is 'Page 0x00000000' above?

        

  • Target:Eraseing block  0x00000030 through 0x00000030  .

    Target:Writing header and image data to Block 0x00000030,Page 0x00000000.      

    Target:Eraseing block  0x00000031 through 0x00000031  .

    Target:Writing header and image data to Block 0x00000031,Page 0x00000000.         

    Target:Eraseing block  0x00000032 through 0x00000032  .

    Target:Writing header and image data to Block 0x00000032,Page 0x00000000.         

    Target:Protecting the entire NAND flash.

    Target:DONE

    Target:DONE

    Operation completed successfully

     

    When I turn off all of SW7,but i get nothing displayed on com tool.And why is 'Page 0x00000000' above?

  • Jim liang,

    I have been doing a little digging into this and it appears that although FAA and DAA parts are compatible at a high level.. they are not 100% compatible.  Please see the following post for findings about a customer that researched this in the past...

    http://e2e.ti.com/forums/p/4118/15215.aspx#15215

    Our utilities where written for FAA type devices which our DM355 is compatible with; the reason you may be having the issues you are seeing is likely the DAA parts you are using...