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.

AM3352: Sitara AM335x NAND flash programming tool

Part Number: AM3352
Other Parts Discussed in Thread: UNIFLASH

Hi,

We have a proprietary HW design based on Sitara AM3352ZCED50.

We are currently programming its NAND flash memory in production environment by booting a Flasher-Linux from microSD card and from there, raw-flashing MLO, U-Boot and Kernel and then partitioning and copying root filesystem content.

Now, we'd like to switch to an USB-based flashing procedure (to avoid using the microSD-based method).

We´ve tried the Uniflash v3.4.1, trying to follow these tutorials:

Unfortunately, the links to source code, patches, etc, pointing to gforge.ti.com, are all broken.

We´ve run some test, sending our already compiled MLOs/SPLs to the ROM bootloader (via EMAC1, to avoid problems eith RNDIS drivers). The download process via TFTP succeeds, according to Wireshark captures, but the MLO/SPLs don't seem to work. The MLOs/SPLs we've used are the ones we used in the microSD-card-based process. We've already tried striping MLO's header, but it dosen't work either.

So, these are our questions:

- Is Uniflash 3.4.1 the more appropriate tool to flash Sitara AM335x based boards via USB (or Ethernet)? Or is there any other better tool?

- Is there any generic, already compiled, MLO/SPL + U-Boot available online including the changes required for network booting and flashing?

- Is there any updated version of this tutorial (or similar) http://processors.wiki.ti.com/index.php/Sitara_Uniflash_Flash_Programming_with_U-Boot where the links to the required material are not broken?

- Which is the TI recommended method to flash in production environment the Sitara AM335x based devices?

Thanks a lot in advance and best regards,

Lisandro

  • Lisandro,

    Thanks for the background and let me try to address your specific questions:

    user4667683 said:
    - Is Uniflash 3.4.1 the more appropriate tool to flash Sitara AM335x based boards via USB (or Ethernet)? Or is there any other better tool?

    For Windows, this is currently the best tool. For Linux, standard Linux tools available on Ubuntu can be used with some specific configuration.

    user4667683 said:
    - Is there any generic, already compiled, MLO/SPL + U-Boot available online including the changes required for network booting and flashing?

    The u-boot-spl.bin (should be used instead of MLO) and u-boot.img provided with the SDKs in the board -support-prebuilt-images/ directory boot fine from ethernet or USB for me on a Beaglebone Black. This should allow you to get to a prompt.

    user4667683 said:
    - Is there any updated version of this tutorial (or similar) http://processors.wiki.ti.com/index.php/Sitara_Uniflash_Flash_Programming_with_U-Boot where the links to the required material are not broken?

    Not at this time, sorry. However, a lot of the process has been simplified by more recent SDKs. The support for USB and Ethernet is now built in (no patches required). The cat app utility and the debrick script are nice to have but not necessary. Once you can get to a U-Boot prompt, it is really as simple as TFTPing the necessary files and burning them to the NAND with U-Boot commands. This all has to be customized to your needs.

    user4667683 said:
    - Which is the TI recommended method to flash in production environment the Sitara AM335x based devices?

    This was the intention of Uniflash. It uses a specific protocol to get the progress bar to update. This is captured in the debrick.scr. But, it is not really necessary to successfully program a board on a production line.

    I will provide an example debrick script here:

    /cfs-file/__key/communityserver-discussions-components-files/791/7534.debrick.txt

    for your review and to see if it helps you.

    I hope this addresses your questions. Thanks for your post.